Commit df7d1dd5 authored by shajiaiming's avatar shajiaiming

多语言

parent f4c21ec8
...@@ -31,8 +31,22 @@ class ApplicationController extends BaseController ...@@ -31,8 +31,22 @@ class ApplicationController extends BaseController
} }
$recommendData = ApplicationBusiness::getRecommendList($condition); $recommendData = ApplicationBusiness::getRecommendList($condition);
foreach($recommendData as $j => &$val){
$name_arr = json_decode($val['name'], true);
$val['name'] = $name_arr[$this->lang];
}
$data['recommend'] =$recommendData; $data['recommend'] =$recommendData;
$cate_app_data = ApplicationBusiness::getCategoryAppList($condition); $cate_app_data = ApplicationBusiness::getCategoryAppList($condition);
foreach ($cate_app_data as $key => &$val){
$name = json_decode($val['name'], true);
$val['name'] = $name[$this->lang];
if(!empty($val['apps'])){
foreach($val['apps'] as $j => &$value){
$name = json_decode($value['name'], true);
$value['name'] = $name[$this->lang];
}
}
}
$data['cate_app_data'] = $cate_app_data; $data['cate_app_data'] = $cate_app_data;
$data['banner'] = ApplicationBusiness::getBannerList($condition); $data['banner'] = ApplicationBusiness::getBannerList($condition);
$result['code'] = 0; $result['code'] = 0;
...@@ -48,6 +62,16 @@ class ApplicationController extends BaseController ...@@ -48,6 +62,16 @@ class ApplicationController extends BaseController
{ {
$result['code'] = 0; $result['code'] = 0;
$result['data'] = ApplicationBusiness::getCategoryAppList(); $result['data'] = ApplicationBusiness::getCategoryAppList();
foreach ($result['data'] as $key => &$val){
$name = json_decode($val['name'], true);
$val['name'] = $name[$this->lang];
if(!empty($val['apps'])){
foreach($val['apps'] as $j => &$value){
$name = json_decode($value['name'], true);
$value['name'] = $name[$this->lang];
}
}
}
return $result; return $result;
} }
...@@ -59,7 +83,11 @@ class ApplicationController extends BaseController ...@@ -59,7 +83,11 @@ class ApplicationController extends BaseController
$request = Yii::$app->request; $request = Yii::$app->request;
$id = $request->post('id',0); $id = $request->post('id',0);
if($id){ if($id){
return ApplicationBusiness::appInfo($id); $result = ApplicationBusiness::appInfo($id);
$data = $result['data'];
$name = json_decode($data['name'], true);
$data['name'] = $name[$this->lang];
return ['code' => 0,'data' => $data];
}else{ }else{
return ['code' => 1,'data' => [],'msg' => 'id不能为空']; return ['code' => 1,'data' => [],'msg' => 'id不能为空'];
} }
...@@ -126,6 +154,8 @@ class ApplicationController extends BaseController ...@@ -126,6 +154,8 @@ class ApplicationController extends BaseController
$icon_Items = array_column($appItems,'icon'); $icon_Items = array_column($appItems,'icon');
$icon_Infos = CoinImage::getItemsByIds($icon_Items); $icon_Infos = CoinImage::getItemsByIds($icon_Items);
foreach($appItems as &$value){ foreach($appItems as &$value){
$name = json_decode($value['name'], true);
$value['name'] = $name[$this->lang];
if($value['icon']){ if($value['icon']){
$value['icon'] = $icon_Infos[$value['icon']]['base_url'].$icon_Infos[$value['icon']]['file_url']; $value['icon'] = $icon_Infos[$value['icon']]['base_url'].$icon_Infos[$value['icon']]['file_url'];
}else{ }else{
...@@ -138,7 +168,9 @@ class ApplicationController extends BaseController ...@@ -138,7 +168,9 @@ class ApplicationController extends BaseController
$cate_id = $item['cate_id']; $cate_id = $item['cate_id'];
$app_id = $item['app_id']; $app_id = $item['app_id'];
$cate_app_items[$cate_id]['cate_id'] = $cate_id; $cate_app_items[$cate_id]['cate_id'] = $cate_id;
$cate_app_items[$cate_id]['name'] = $item['name']; $name_arr = json_decode($item['name'], true);
$name = $name_arr[$this->lang];
$cate_app_items[$cate_id]['name'] = $name;
$cate_app_items[$cate_id]['apps'][] = $appItems[$app_id]; $cate_app_items[$cate_id]['apps'][] = $appItems[$app_id];
} }
foreach ($cate_app_items as $item){ foreach ($cate_app_items as $item){
...@@ -159,13 +191,16 @@ class ApplicationController extends BaseController ...@@ -159,13 +191,16 @@ class ApplicationController extends BaseController
$cate_id = $request->get('cate_id',''); $cate_id = $request->get('cate_id','');
if($cate_id){ if($cate_id){
$cate_info = CoinApplicationCategory::getCategoryById($cate_id); $cate_info = CoinApplicationCategory::getCategoryById($cate_id);
$name = $cate_info->name[$this->lang];
$cate_info_data['id'] = $cate_info->id; $cate_info_data['id'] = $cate_info->id;
$cate_info_data['name'] = $cate_info->name; $cate_info_data['name'] = $name;
$appItems = ApplicationBusiness::getCateAppInfo(0,[['cate_id' => $cate_id]]); $appItems = ApplicationBusiness::getCateAppInfo(0,[['cate_id' => $cate_id]]);
if($appItems){ if($appItems){
$appItems = array_shift($appItems); $appItems = array_shift($appItems);
foreach($appItems as &$value){ foreach($appItems as &$value){
$value['app_user_num'] = ApplicationBusiness::getAppUserNum($value['app_id']); $value['app_user_num'] = ApplicationBusiness::getAppUserNum($value['app_id']);
$name_arr = json_decode($value['name'], true);
$value['name'] = $name_arr[$this->lang];
} }
$cate_info_data['apps'] = $appItems; $cate_info_data['apps'] = $appItems;
return ['code' => 0,'data' => $cate_info_data]; return ['code' => 0,'data' => $cate_info_data];
......
<?php
/**
* Created By Sublime Text 3
*
* @authors rlgy <rlgyzhcn@qq.com>
* @date 2018-09-07 17:41:04
*/
namespace backend\assets\applicationCategory;
use yii\web\AssetBundle;
use yii\web\View;
class IndexAsset extends AssetBundle
{
public $sourcePath = '@backend/web/js/application-category';
public $js = [
'index.js',
];
public $jsOptions = [
'position' => View::POS_END,
];
}
\ No newline at end of file
...@@ -75,6 +75,16 @@ class ApplicationCategoryController extends BaseController ...@@ -75,6 +75,16 @@ class ApplicationCategoryController extends BaseController
} }
} }
public function actionEdit()
{
$id = Yii::$app->request->get('id', null);
if ($id) {
$coin = CoinApplicationCategory::getCategoryById($id);
$this->layout = false;
return $this->render('edit', ['model' => $coin]);
}
}
/** /**
* @return array * @return array
* @throws \Throwable * @throws \Throwable
......
...@@ -5,13 +5,16 @@ ...@@ -5,13 +5,16 @@
* Date: 2018/10/15 * Date: 2018/10/15
* Time: 10:26 * Time: 10:26
*/ */
namespace backend\controllers; namespace backend\controllers;
use backend\models\coin\CoinApplicationForm; use backend\models\coin\CoinApplicationForm;
use common\models\psources\CoinAppCate; use common\models\psources\CoinAppCate;
use common\models\psources\CoinApplication; use common\models\psources\CoinApplication;
use common\models\psources\CoinApplicationCategory; use common\models\psources\CoinApplicationCategory;
use common\models\psources\CoinImage; use common\models\psources\CoinImage;
use Yii; use Yii;
class ApplicationController extends BaseController class ApplicationController extends BaseController
{ {
/** /**
...@@ -20,28 +23,28 @@ class ApplicationController extends BaseController ...@@ -20,28 +23,28 @@ class ApplicationController extends BaseController
*/ */
public function actionList() public function actionList()
{ {
if(Yii::$app->request->isAjax){ if (Yii::$app->request->isAjax) {
$id = Yii::$app->request->get('id'); $id = Yii::$app->request->get('id');
Yii::$app->response->format = 'json'; Yii::$app->response->format = 'json';
$request = Yii::$app->request; $request = Yii::$app->request;
$page = $request->get('page', 1); $page = $request->get('page', 1);
$limit = $request->get('limit', 10); $limit = $request->get('limit', 10);
$data = CoinApplication::getListByCategory($page, $limit, $id); $data = CoinApplication::getListByCategory($page, $limit, $id);
return $data; return $data;
}else{ } else {
$id = Yii::$app->request->get('id'); $id = Yii::$app->request->get('id');
if($id){ if ($id) {
$parent_category = CoinApplicationCategory::getCategoryById($id); $parent_category = CoinApplicationCategory::getCategoryById($id);
$platform_id = Yii::$app->user->identity->platform_id; $platform_id = Yii::$app->user->identity->platform_id;
$condition = ['platform_id' => $platform_id]; $condition = ['platform_id' => $platform_id];
$cate_items = CoinApplicationCategory::getCateItemsArray($condition); $cate_items = CoinApplicationCategory::getCateItemsArray($condition);
if($parent_category){ if ($parent_category) {
return $this->render('list',['parent_category' => $parent_category,'cate_items' => $cate_items]); return $this->render('list', ['parent_category' => $parent_category, 'cate_items' => $cate_items]);
}else{ } else {
$this->error('id参数不合法', Yii::$app->request->getReferrer()); $this->error('id参数不合法', Yii::$app->request->getReferrer());
} }
}else{ } else {
$this->error('id参数不能为空', Yii::$app->request->getReferrer()); $this->error('id参数不能为空', Yii::$app->request->getReferrer());
} }
} }
...@@ -53,21 +56,33 @@ class ApplicationController extends BaseController ...@@ -53,21 +56,33 @@ class ApplicationController extends BaseController
*/ */
public function actionAdd() public function actionAdd()
{ {
if(Yii::$app->request->isPost){ if (Yii::$app->request->isPost) {
Yii::$app->response->format = 'json'; Yii::$app->response->format = 'json';
$category_id = Yii::$app->request->get('category_id'); $category_id = Yii::$app->request->get('category_id');
$fields = ['category_id','h5_icon','official_url','introduce_image','show_width','show_height','open_type', 'open_type_app', 'platform_type', 'name','sort','icon','type','native_url','native_login_url','h5_url','android_url','ios_url','app_store_url','advertise','description','redirect_type', 'platform_id']; $fields = ['category_id', 'h5_icon', 'official_url', 'introduce_image', 'show_width', 'show_height', 'open_type', 'open_type_app', 'platform_type', 'name', 'sort', 'icon', 'type', 'native_url', 'native_login_url', 'h5_url', 'android_url', 'ios_url', 'app_store_url', 'advertise', 'description', 'redirect_type', 'platform_id'];
$data = Yii::$app->request->post(); $data = Yii::$app->request->post();
$data['open_type_app'] = (0 == $data['open_type_app']) ? 1 : $data['open_type_app']; $lang = [
$params = array_merge($data,['category_id' => $category_id, 'platform_id' => Yii::$app->user->identity->platform_id]); 'zh-CN',
'en-US',
'ja'
];
$name_arr = $data['name'];
$name = [];
foreach ($name_arr as $key => $val){
$name[$lang[$key]] = $val;
}
unset($data['name']);
$data['name'] = $name;
$data['open_type_app'] = (0 == $data['open_type_app']) ? 1 : $data['open_type_app'];
$params = array_merge($data, ['category_id' => $category_id, 'platform_id' => Yii::$app->user->identity->platform_id]);
$params = $this->initParams($params, $fields); $params = $this->initParams($params, $fields);
$coin_applicateion_form = new CoinApplicationForm(); $coin_applicateion_form = new CoinApplicationForm();
$coin_applicateion_form->setScenario(CoinApplicationForm::SCENARIO_ADD); $coin_applicateion_form->setScenario(CoinApplicationForm::SCENARIO_ADD);
$coin_applicateion_form->load($params,''); $coin_applicateion_form->load($params, '');
$result = $coin_applicateion_form->add(); $result = $coin_applicateion_form->add();
if($result['code'] == 0){ if ($result['code'] == 0) {
$this->success('添加成功', '/admin/application/list?id='.$category_id); $this->success('添加成功', '/admin/application/list?id=' . $category_id);
}else{ } else {
$this->error($result['msg'], Yii::$app->request->getReferrer()); $this->error($result['msg'], Yii::$app->request->getReferrer());
} }
} }
...@@ -82,55 +97,74 @@ class ApplicationController extends BaseController ...@@ -82,55 +97,74 @@ class ApplicationController extends BaseController
{ {
if (Yii::$app->request->isPost) { if (Yii::$app->request->isPost) {
Yii::$app->response->format = 'json'; Yii::$app->response->format = 'json';
$fields = ['category_id','id','h5_icon','official_url','introduce_image','show_width','show_height','open_type', 'open_type_app','platform_type', 'name','sort','icon','type','native_url','native_login_url','h5_url','android_url','ios_url','app_store_url','advertise','description','redirect_type', 'platform_id']; $fields = ['category_id', 'id', 'h5_icon', 'official_url', 'introduce_image', 'show_width', 'show_height', 'open_type', 'open_type_app', 'platform_type', 'name', 'sort', 'icon', 'type', 'native_url', 'native_login_url', 'h5_url', 'android_url', 'ios_url', 'app_store_url', 'advertise', 'description', 'redirect_type', 'platform_id'];
$data = Yii::$app->request->post(); $data = Yii::$app->request->post();
$data['open_type_app'] = (0 == $data['open_type_app']) ? 1 : $data['open_type_app'];
$params = array_merge($data,['platform_id' => Yii::$app->user->identity->platform_id]); $lang = [
'zh-CN',
'en-US',
'ja'
];
$name_arr = $data['name'];
$name = [];
foreach ($name_arr as $key => $val){
$name[$lang[$key]] = $val;
}
unset($data['name']);
$data['name'] = $name;
$data['open_type_app'] = (0 == $data['open_type_app']) ? 1 : $data['open_type_app'];
#var_dump($data);exit;
$params = array_merge($data, ['platform_id' => Yii::$app->user->identity->platform_id]);
$params = $this->initParams($params, $fields); $params = $this->initParams($params, $fields);
$coin_applicateion_form = new CoinApplicationForm(); $coin_applicateion_form = new CoinApplicationForm();
$coin_applicateion_form->setScenario(CoinApplicationForm::SCENARIO_EDIT); $coin_applicateion_form->setScenario(CoinApplicationForm::SCENARIO_EDIT);
$coin_applicateion_form->load($params,''); $coin_applicateion_form->load($params, '');
return $coin_applicateion_form->edit(); return $coin_applicateion_form->edit();
} elseif (Yii::$app->request->isGet) { } elseif (Yii::$app->request->isGet) {
$id = Yii::$app->request->get('id', null); $id = Yii::$app->request->get('id', null);
$category_id = Yii::$app->request->get('category_id', null); $category_id = Yii::$app->request->get('category_id', null);
if ($id) { if ($id) {
$applicate = CoinApplication::getApplicateById($id); $applicate = CoinApplication::getApplicateById($id);
$coin_ids = []; $coin_ids = [];
if($applicate['icon']){ if ($applicate['icon']) {
$coin_ids[] = $applicate['icon']; $coin_ids[] = $applicate['icon'];
} }
if($applicate['h5_icon']){ if ($applicate['h5_icon']) {
$coin_ids[] = $applicate['h5_icon']; $coin_ids[] = $applicate['h5_icon'];
} }
if($applicate['introduce_image']){ if ($applicate['introduce_image']) {
$coin_ids[] = $applicate['introduce_image']; $coin_ids[] = $applicate['introduce_image'];
} }
if($coin_ids){ if ($coin_ids) {
$coin_items = CoinImage::getItemsByIds($coin_ids); $coin_items = CoinImage::getItemsByIds($coin_ids);
} }
$app_cate = CoinAppCate::getAppCate($category_id,$id); $app_cate = CoinAppCate::getAppCate($category_id, $id);
if($applicate['icon']){ if ($applicate['icon']) {
$icon_info = $coin_items[$applicate['icon']]; $icon_info = $coin_items[$applicate['icon']];
$applicate['icon_url'] =$icon_info['base_url'].$icon_info['file_url']; $applicate['icon_url'] = $icon_info['base_url'] . $icon_info['file_url'];
}else{ } else {
$applicate['icon_url'] =""; $applicate['icon_url'] = "";
} }
if($applicate['h5_icon']){ if ($applicate['h5_icon']) {
$icon_info = $coin_items[$applicate['h5_icon']]; $icon_info = $coin_items[$applicate['h5_icon']];
$applicate['h5_icon_url'] =$icon_info['base_url'].$icon_info['file_url']; $applicate['h5_icon_url'] = $icon_info['base_url'] . $icon_info['file_url'];
}else{ } else {
$applicate['h5_icon_url'] =""; $applicate['h5_icon_url'] = "";
} }
if($applicate['introduce_image']){ if ($applicate['introduce_image']) {
$icon_info = $coin_items[$applicate['introduce_image']]; $icon_info = $coin_items[$applicate['introduce_image']];
$applicate['introduce_image_url'] =$icon_info['base_url'].$icon_info['file_url']; $applicate['introduce_image_url'] = $icon_info['base_url'] . $icon_info['file_url'];
}else{ } else {
$applicate['introduce_image_url'] =""; $applicate['introduce_image_url'] = "";
} }
$applicate['sort'] = $app_cate->sort; $applicate['sort'] = $app_cate->sort;
$name_arr = json_decode($applicate['name'], true);
$applicate['name_ja'] = $name_arr['ja'];
$applicate['name_en'] = $name_arr['en-US'];
$applicate['name_zh'] = $name_arr['zh-CN'];
$this->layout = false; $this->layout = false;
return $this->render('edit', ['item' => $applicate,'category_id' => $category_id]); return $this->render('edit', ['item' => $applicate, 'category_id' => $category_id]);
} }
} }
} }
...@@ -149,7 +183,7 @@ class ApplicationController extends BaseController ...@@ -149,7 +183,7 @@ class ApplicationController extends BaseController
$category_id = Yii::$app->request->get('category_id'); $category_id = Yii::$app->request->get('category_id');
if ($id && $category_id) { if ($id && $category_id) {
$coin_applicateion_form = new CoinApplicationForm(); $coin_applicateion_form = new CoinApplicationForm();
return $coin_applicateion_form->del($id,$category_id); return $coin_applicateion_form->del($id, $category_id);
} }
return ['code' => 1, 'msg' => 'failed']; return ['code' => 1, 'msg' => 'failed'];
} }
...@@ -160,13 +194,13 @@ class ApplicationController extends BaseController ...@@ -160,13 +194,13 @@ class ApplicationController extends BaseController
*/ */
public function actionAddCategory() public function actionAddCategory()
{ {
if(Yii::$app->request->isPost){ if (Yii::$app->request->isPost) {
Yii::$app->response->format = 'json'; Yii::$app->response->format = 'json';
$cate_id = Yii::$app->request->post('cate_id'); $cate_id = Yii::$app->request->post('cate_id');
$app_id = Yii::$app->request->post('app_id'); $app_id = Yii::$app->request->post('app_id');
$sort = Yii::$app->request->post('sort',0); $sort = Yii::$app->request->post('sort', 0);
$coin_applicateion_form = new CoinApplicationForm(); $coin_applicateion_form = new CoinApplicationForm();
return $coin_applicateion_form->addCategory($app_id,$cate_id,$sort); return $coin_applicateion_form->addCategory($app_id, $cate_id, $sort);
} }
} }
...@@ -176,34 +210,34 @@ class ApplicationController extends BaseController ...@@ -176,34 +210,34 @@ class ApplicationController extends BaseController
*/ */
public function actionImageIndex() public function actionImageIndex()
{ {
if(Yii::$app->request->isAjax){ if (Yii::$app->request->isAjax) {
$id = Yii::$app->request->get('id'); $id = Yii::$app->request->get('id');
$image_category = Yii::$app->request->get('image_category',1); $image_category = Yii::$app->request->get('image_category', 1);
Yii::$app->response->format = 'json'; Yii::$app->response->format = 'json';
$applicate = CoinApplication::getApplicate($id); $applicate = CoinApplication::getApplicate($id);
if($applicate){ if ($applicate) {
if($image_category == 1){ if ($image_category == 1) {
$data = CoinImage::getItemsByImageIds($applicate->image_ids); $data = CoinImage::getItemsByImageIds($applicate->image_ids);
}else if($image_category == 2){ } else if ($image_category == 2) {
$data = CoinImage::getItemsByImageIds($applicate->h5_image_ids); $data = CoinImage::getItemsByImageIds($applicate->h5_image_ids);
}else{ } else {
$data = ['code' => 0,'data' => []]; $data = ['code' => 0, 'data' => []];
} }
}else{ } else {
$data = ['code' => 0,'data' => []]; $data = ['code' => 0, 'data' => []];
} }
return $data; return $data;
}else{ } else {
$id = Yii::$app->request->get('id'); $id = Yii::$app->request->get('id');
if($id){ if ($id) {
$applicate = CoinApplication::getApplicate($id); $applicate = CoinApplication::getApplicate($id);
if($applicate){ if ($applicate) {
return $this->render('image-index',['applicate' => $applicate]); return $this->render('image-index', ['applicate' => $applicate]);
}else{ } else {
$this->error('id参数不合法', Yii::$app->request->getReferrer()); $this->error('id参数不合法', Yii::$app->request->getReferrer());
} }
}else{ } else {
$this->error('id参数不能为空', Yii::$app->request->getReferrer()); $this->error('id参数不能为空', Yii::$app->request->getReferrer());
} }
} }
...@@ -215,16 +249,16 @@ class ApplicationController extends BaseController ...@@ -215,16 +249,16 @@ class ApplicationController extends BaseController
*/ */
public function actionAddImage() public function actionAddImage()
{ {
if(Yii::$app->request->isPost){ if (Yii::$app->request->isPost) {
Yii::$app->response->format = 'json'; Yii::$app->response->format = 'json';
$id = Yii::$app->request->post('applicate_id',0); $id = Yii::$app->request->post('applicate_id', 0);
$image_id = Yii::$app->request->post('image',0); $image_id = Yii::$app->request->post('image', 0);
$image_category = Yii::$app->request->post('image_category',1); $image_category = Yii::$app->request->post('image_category', 1);
if($id && $image_id){ if ($id && $image_id) {
$coin_applicate_form = new CoinApplicationForm(); $coin_applicate_form = new CoinApplicationForm();
return $coin_applicate_form->addImage($id,$image_id,$image_category); return $coin_applicate_form->addImage($id, $image_id, $image_category);
}else{ } else {
return ['code' => 1,'msg'=> '图片添加失败']; return ['code' => 1, 'msg' => '图片添加失败'];
} }
} }
} }
...@@ -238,10 +272,10 @@ class ApplicationController extends BaseController ...@@ -238,10 +272,10 @@ class ApplicationController extends BaseController
Yii::$app->response->format = 'json'; Yii::$app->response->format = 'json';
$id = Yii::$app->request->get('id'); $id = Yii::$app->request->get('id');
$applicate_id = Yii::$app->request->get('applicate_id'); $applicate_id = Yii::$app->request->get('applicate_id');
$image_category = Yii::$app->request->get('image_category',1); $image_category = Yii::$app->request->get('image_category', 1);
if ($id && $applicate_id) { if ($id && $applicate_id) {
$coin_applicateion_form = new CoinApplicationForm(); $coin_applicateion_form = new CoinApplicationForm();
return $coin_applicateion_form->delImage($id,$applicate_id,$image_category); return $coin_applicateion_form->delImage($id, $applicate_id, $image_category);
} }
return ['code' => 1, 'msg' => 'failed']; return ['code' => 1, 'msg' => 'failed'];
} }
...@@ -255,19 +289,19 @@ class ApplicationController extends BaseController ...@@ -255,19 +289,19 @@ class ApplicationController extends BaseController
if (Yii::$app->request->isAjax) { if (Yii::$app->request->isAjax) {
Yii::$app->response->format = 'json'; Yii::$app->response->format = 'json';
$request = Yii::$app->request; $request = Yii::$app->request;
$id = $request->get('id', ''); $id = $request->get('id', '');
$category_id = $request->get('category_id',''); $category_id = $request->get('category_id', '');
$sort = $request->get('sort',1); $sort = $request->get('sort', 1);
if($id && $category_id){ if ($id && $category_id) {
$app_cate = CoinAppCate::getAppCate($category_id,$id); $app_cate = CoinAppCate::getAppCate($category_id, $id);
if(!$app_cate){ if (!$app_cate) {
return ['code' => 1,'msg' =>'应用不存在,不能设置排序']; return ['code' => 1, 'msg' => '应用不存在,不能设置排序'];
} }
$app_cate->sort=$sort; $app_cate->sort = $sort;
$app_cate->save(); $app_cate->save();
return ['code' => 0,'msg' => '应用排序设置成功']; return ['code' => 0, 'msg' => '应用排序设置成功'];
}else{ } else {
return ['code' => 1 ,'msg' => '应用排序设置失败']; return ['code' => 1, 'msg' => '应用排序设置失败'];
} }
} }
} }
...@@ -281,18 +315,18 @@ class ApplicationController extends BaseController ...@@ -281,18 +315,18 @@ class ApplicationController extends BaseController
if (Yii::$app->request->isAjax) { if (Yii::$app->request->isAjax) {
Yii::$app->response->format = 'json'; Yii::$app->response->format = 'json';
$request = Yii::$app->request; $request = Yii::$app->request;
$id = $request->get('id', ''); $id = $request->get('id', '');
$enable = $request->get('enable',1); $enable = $request->get('enable', 1);
if($id){ if ($id) {
$applicate = CoinApplication::getApplicate($id); $applicate = CoinApplication::getApplicate($id);
if(!$applicate){ if (!$applicate) {
return ['code' => 1,'msg' =>'应用不存在,不能设置启用状态']; return ['code' => 1, 'msg' => '应用不存在,不能设置启用状态'];
} }
$applicate->enable = $enable; $applicate->enable = $enable;
$applicate->save(); $applicate->save();
return ['code' => 0,'msg' => '应用使用状态设置成功']; return ['code' => 0, 'msg' => '应用使用状态设置成功'];
}else{ } else {
return ['code' => 1 ,'msg' => '应用使用状态设置失败']; return ['code' => 1, 'msg' => '应用使用状态设置失败'];
} }
} }
} }
...@@ -306,18 +340,18 @@ class ApplicationController extends BaseController ...@@ -306,18 +340,18 @@ class ApplicationController extends BaseController
if (Yii::$app->request->isAjax) { if (Yii::$app->request->isAjax) {
Yii::$app->response->format = 'json'; Yii::$app->response->format = 'json';
$request = Yii::$app->request; $request = Yii::$app->request;
$id = $request->get('app_id', ''); $id = $request->get('app_id', '');
$h5_image_showtype = $request->get('h5_image_showtype',1); $h5_image_showtype = $request->get('h5_image_showtype', 1);
if($id){ if ($id) {
$applicate = CoinApplication::getApplicate($id); $applicate = CoinApplication::getApplicate($id);
if(!$applicate){ if (!$applicate) {
return ['code' => 1,'msg' =>'应用不存在']; return ['code' => 1, 'msg' => '应用不存在'];
} }
$applicate->h5_image_showtype = $h5_image_showtype; $applicate->h5_image_showtype = $h5_image_showtype;
$applicate->save(); $applicate->save();
return ['code' => 0,'msg' => '显示尺寸设置成功']; return ['code' => 0, 'msg' => '显示尺寸设置成功'];
}else{ } else {
return ['code' => 1 ,'msg' => '显示尺寸设置失败']; return ['code' => 1, 'msg' => '显示尺寸设置失败'];
} }
} }
} }
......
...@@ -5,6 +5,7 @@ ...@@ -5,6 +5,7 @@
* Date: 2018/10/12 * Date: 2018/10/12
* Time: 19:10 * Time: 19:10
*/ */
namespace backend\models\coin; namespace backend\models\coin;
use backend\models\BaseForm; use backend\models\BaseForm;
...@@ -12,6 +13,7 @@ use common\models\psources\CoinAppCate; ...@@ -12,6 +13,7 @@ use common\models\psources\CoinAppCate;
use common\models\psources\CoinApplicateRecommend; use common\models\psources\CoinApplicateRecommend;
use common\models\psources\CoinApplication; use common\models\psources\CoinApplication;
use Yii; use Yii;
class CoinApplicationForm extends BaseForm class CoinApplicationForm extends BaseForm
{ {
const SCENARIO_ADD = 'add'; const SCENARIO_ADD = 'add';
...@@ -46,8 +48,8 @@ class CoinApplicationForm extends BaseForm ...@@ -46,8 +48,8 @@ class CoinApplicationForm extends BaseForm
public function scenarios() public function scenarios()
{ {
return [ return [
self::SCENARIO_ADD => ['category_id','name','h5_icon','official_url','introduce_image','show_width','show_height','open_type', 'open_type_app', 'platform_type','sort','icon','type','native_url','native_login_url','h5_url','android_url','ios_url','app_store_url','advertise','description','redirect_type', 'platform_id'], self::SCENARIO_ADD => ['category_id', 'name', 'h5_icon', 'official_url', 'introduce_image', 'show_width', 'show_height', 'open_type', 'open_type_app', 'platform_type', 'sort', 'icon', 'type', 'native_url', 'native_login_url', 'h5_url', 'android_url', 'ios_url', 'app_store_url', 'advertise', 'description', 'redirect_type', 'platform_id'],
self::SCENARIO_EDIT => ['category_id','id','h5_icon','official_url','introduce_image','show_width','show_height','open_type', 'open_type_app', 'platform_type','name','sort','icon','type','native_url','native_login_url','h5_url','android_url','ios_url','app_store_url','advertise','description','redirect_type', 'platform_id'], self::SCENARIO_EDIT => ['category_id', 'id', 'h5_icon', 'official_url', 'introduce_image', 'show_width', 'show_height', 'open_type', 'open_type_app', 'platform_type', 'name', 'sort', 'icon', 'type', 'native_url', 'native_login_url', 'h5_url', 'android_url', 'ios_url', 'app_store_url', 'advertise', 'description', 'redirect_type', 'platform_id'],
]; ];
} }
...@@ -55,42 +57,42 @@ class CoinApplicationForm extends BaseForm ...@@ -55,42 +57,42 @@ class CoinApplicationForm extends BaseForm
public function attributeLabels() public function attributeLabels()
{ {
return [ return [
'id' => 'ID', 'id' => 'ID',
'category_id' => '分类ID', 'category_id' => '分类ID',
'name' => '名称', 'name' => '名称',
'icon' => '图标', 'icon' => '图标',
'h5_icon' => 'h5图标', 'h5_icon' => 'h5图标',
'official_url' => '官方链接', 'official_url' => '官方链接',
'introduce_image' => '介绍图', 'introduce_image' => '介绍图',
'sort' => '排序', 'sort' => '排序',
'type' => '类型', 'type' => '类型',
'native_url' => '原生链接', 'native_url' => '原生链接',
'native_login_url' => '原生登录链接', 'native_login_url' => '原生登录链接',
'h5_url' => 'h5链接', 'h5_url' => 'h5链接',
'android_url' => '安卓链接', 'android_url' => '安卓链接',
'ios_url' => 'ios企业版链接', 'ios_url' => 'ios企业版链接',
'app_store_url' => 'ios商店版链接', 'app_store_url' => 'ios商店版链接',
'advertise' => '宣传语', 'advertise' => '宣传语',
'description' => '介绍', 'description' => '介绍',
'redirect_type' => '跳转方式', 'redirect_type' => '跳转方式',
'show_width' => '显示宽度', 'show_width' => '显示宽度',
'show_height' => '显示高度', 'show_height' => '显示高度',
'open_type' => 'H5打开方式 PC版', 'open_type' => 'H5打开方式 PC版',
'open_type_app' => 'H5打开方式 APP版', 'open_type_app' => 'H5打开方式 APP版',
'platform_type' => '所属平台', 'platform_type' => '所属平台',
'platform_id' => '平台Id' 'platform_id' => '平台Id'
]; ];
} }
public function rules() public function rules()
{ {
return [ return [
[['name','category_id'], 'required', 'on' => self::SCENARIO_ADD], [['category_id'], 'required', 'on' => self::SCENARIO_ADD],
['sort', 'default', 'value' => 1], ['sort', 'default', 'value' => 1],
['sort', 'integer'], ['sort', 'integer'],
['icon', 'default', 'value' => 0], ['icon', 'default', 'value' => 0],
['advertise','string', 'length' => [0, 20]], ['advertise', 'string', 'length' => [0, 20]],
['description','string', 'length' => [0, 500]], ['description', 'string', 'length' => [0, 500]],
['type', 'default', 'value' => 1], ['type', 'default', 'value' => 1],
['redirect_type', 'default', 'value' => 1], ['redirect_type', 'default', 'value' => 1],
['show_height', 'default', 'value' => 0], ['show_height', 'default', 'value' => 0],
...@@ -102,14 +104,14 @@ class CoinApplicationForm extends BaseForm ...@@ -102,14 +104,14 @@ class CoinApplicationForm extends BaseForm
public function checkName($attribute, $params) public function checkName($attribute, $params)
{ {
$res = CoinApplication::find()->where(['name' => $this->$attribute])->one(); $res = CoinApplication::find()->where(['name' => $this->$attribute])->one();
$scenario = $this->getScenario(); $scenario = $this->getScenario();
if($scenario == self::SCENARIO_ADD){ if ($scenario == self::SCENARIO_ADD) {
if($res){ if ($res) {
$this->addError($attribute,'应用名称已存在'); $this->addError($attribute, '应用名称已存在');
} }
}else if($scenario == self::SCENARIO_EDIT){ } else if ($scenario == self::SCENARIO_EDIT) {
if($res && $res->id != $this->id){ if ($res && $res->id != $this->id) {
$this->addError($attribute,'应用名称已存在'); $this->addError($attribute, '应用名称已存在');
} }
} }
} }
...@@ -119,13 +121,13 @@ class CoinApplicationForm extends BaseForm ...@@ -119,13 +121,13 @@ class CoinApplicationForm extends BaseForm
*/ */
public function add() public function add()
{ {
if($this->validate()){ if ($this->validate()) {
$tr = CoinApplication::getDb()->beginTransaction(); $tr = CoinApplication::getDb()->beginTransaction();
try{ try {
$coin_applicate = new CoinApplication(); $coin_applicate = new CoinApplication();
$coin_applicate->setAttributes($this->attributes,false); $coin_applicate->setAttributes($this->attributes, false);
$res = $coin_applicate->save(); $res = $coin_applicate->save();
if($res){ if ($res) {
$coin_app_cate = new CoinAppCate(); $coin_app_cate = new CoinAppCate();
$coin_app_cate->app_id = $coin_applicate->id; $coin_app_cate->app_id = $coin_applicate->id;
$coin_app_cate->cate_id = $this->category_id; $coin_app_cate->cate_id = $this->category_id;
...@@ -133,15 +135,15 @@ class CoinApplicationForm extends BaseForm ...@@ -133,15 +135,15 @@ class CoinApplicationForm extends BaseForm
$coin_app_cate->save(); $coin_app_cate->save();
$tr->commit(); $tr->commit();
} }
return ['code' => 0,'msg' => '应用添加成功!']; return ['code' => 0, 'msg' => '应用添加成功!'];
}catch (\Exception $e){ } catch (\Exception $e) {
$tr->rollBack(); $tr->rollBack();
return ['code' => 1,'msg' => $e->getMessage()]; return ['code' => 1, 'msg' => $e->getMessage()];
} }
}else{ } else {
$error = self::getModelError($this); $error = self::getModelError($this);
return ['code' => 1,'msg' => $error]; return ['code' => 1, 'msg' => $error];
} }
} }
...@@ -150,29 +152,29 @@ class CoinApplicationForm extends BaseForm ...@@ -150,29 +152,29 @@ class CoinApplicationForm extends BaseForm
*/ */
public function edit() public function edit()
{ {
if($this->validate()){ if ($this->validate()) {
$tr = CoinApplication::getDb()->beginTransaction(); $tr = CoinApplication::getDb()->beginTransaction();
try{ try {
$coin_applicate = CoinApplication::getApplicate($this->id); $coin_applicate = CoinApplication::getApplicate($this->id);
if($coin_applicate){ if ($coin_applicate) {
$image_ids = $coin_applicate->image_ids; $image_ids = $coin_applicate->image_ids;
$coin_applicate->setAttributes($this->attributes,false); $coin_applicate->setAttributes($this->attributes, false);
$coin_applicate->image_ids = $image_ids; $coin_applicate->image_ids = $image_ids;
$coin_applicate->save(); $coin_applicate->save();
CoinApplicateRecommend::updateName($this->id,2,$this->name); //更新首页推荐name CoinApplicateRecommend::updateName($this->id, 2, $this->name); //更新首页推荐name
CoinAppCate::updateSort($this->category_id,$this->id,$this->sort); CoinAppCate::updateSort($this->category_id, $this->id, $this->sort);
$tr->commit(); $tr->commit();
return ['code' => 0,'msg' => '应用修改成功!']; return ['code' => 0, 'msg' => '应用修改成功!'];
}else{ } else {
return ['code' => 1,'msg' => '应用不存在']; return ['code' => 1, 'msg' => '应用不存在'];
} }
}catch (\Exception $e){ } catch (\Exception $e) {
$tr->rollBack(); $tr->rollBack();
return ['code' => 1,'msg' => $e->getMessage()]; return ['code' => 1, 'msg' => $e->getMessage()];
} }
}else{ } else {
$error = self::getModelError($this); $error = self::getModelError($this);
return ['code' => 1,'msg' => $error]; return ['code' => 1, 'msg' => $error];
} }
} }
...@@ -180,27 +182,27 @@ class CoinApplicationForm extends BaseForm ...@@ -180,27 +182,27 @@ class CoinApplicationForm extends BaseForm
* @param $id * @param $id
* 删除应用 * 删除应用
*/ */
public function del($id,$category_id) public function del($id, $category_id)
{ {
$coin_app_cate = CoinAppCate::getAppCate($category_id,$id); $coin_app_cate = CoinAppCate::getAppCate($category_id, $id);
if($coin_app_cate){ if ($coin_app_cate) {
$tr = CoinApplication::getDb()->beginTransaction(); $tr = CoinApplication::getDb()->beginTransaction();
try{ try {
$cate_count = CoinAppCate::getCateCountByAppId($id); $cate_count = CoinAppCate::getCateCountByAppId($id);
if($cate_count == 1){ if ($cate_count == 1) {
$applicate = CoinApplication::getApplicate($id); $applicate = CoinApplication::getApplicate($id);
$applicate->delete(); $applicate->delete();
CoinApplicateRecommend::del($id,2); //删除首页推荐 CoinApplicateRecommend::del($id, 2); //删除首页推荐
} }
$coin_app_cate->delete(); $coin_app_cate->delete();
$tr->commit(); $tr->commit();
return ['code' => 0,'msg' => '应用分类删除成功']; return ['code' => 0, 'msg' => '应用分类删除成功'];
}catch (\Exception $e){ } catch (\Exception $e) {
return ['code' => 1,'msg' => $e->getMessage()]; return ['code' => 1, 'msg' => $e->getMessage()];
} }
}else{ } else {
return ['code' => 1,'msg' => '应用分类不存在']; return ['code' => 1, 'msg' => '应用分类不存在'];
} }
} }
...@@ -209,68 +211,68 @@ class CoinApplicationForm extends BaseForm ...@@ -209,68 +211,68 @@ class CoinApplicationForm extends BaseForm
* @param $id * @param $id
* 添加所属分类 * 添加所属分类
*/ */
public function addCategory($id,$category_id,$sort) public function addCategory($id, $category_id, $sort)
{ {
$coin_app_cate = CoinAppCate::getAppCate($category_id,$id); $coin_app_cate = CoinAppCate::getAppCate($category_id, $id);
if($coin_app_cate){ if ($coin_app_cate) {
return ['code' => 1,'msg' => '应用已属于该分类,不能再添加']; return ['code' => 1, 'msg' => '应用已属于该分类,不能再添加'];
}else{ } else {
$coin_app_cate = new CoinAppCate(); $coin_app_cate = new CoinAppCate();
$coin_app_cate->app_id = $id; $coin_app_cate->app_id = $id;
$coin_app_cate->cate_id = $category_id; $coin_app_cate->cate_id = $category_id;
$coin_app_cate->sort = $sort; $coin_app_cate->sort = $sort;
$coin_app_cate->save(); $coin_app_cate->save();
return ['code' => 0,'msg' => '应用所属分类添加成功']; return ['code' => 0, 'msg' => '应用所属分类添加成功'];
} }
} }
public function addImage($id,$image_id,$image_category) public function addImage($id, $image_id, $image_category)
{ {
$coin_applicate = CoinApplication::getApplicate($id); $coin_applicate = CoinApplication::getApplicate($id);
if($coin_applicate){ if ($coin_applicate) {
if($image_category == 1){ //app图片 if ($image_category == 1) { //app图片
$image_ids_field = 'image_ids'; $image_ids_field = 'image_ids';
}else if($image_category == 2){ //h5图片 } else if ($image_category == 2) { //h5图片
$image_ids_field = 'h5_image_ids'; $image_ids_field = 'h5_image_ids';
} }
$image_ids = $coin_applicate->$image_ids_field; $image_ids = $coin_applicate->$image_ids_field;
if($image_ids){ if ($image_ids) {
$image_items = explode(',',$image_ids); $image_items = explode(',', $image_ids);
array_push($image_items,$image_id); array_push($image_items, $image_id);
$image_ids = implode(",",$image_items); $image_ids = implode(",", $image_items);
}else{ } else {
$image_ids = $image_id; $image_ids = $image_id;
} }
$coin_applicate->$image_ids_field = $image_ids; $coin_applicate->$image_ids_field = $image_ids;
$coin_applicate->save(); $coin_applicate->save();
return ['code' => 0,'msg' => '图片添加成功']; return ['code' => 0, 'msg' => '图片添加成功'];
}else{ } else {
return ['code' => 1,'msg' => '应用不存在']; return ['code' => 1, 'msg' => '应用不存在'];
} }
} }
public function delImage($image_id,$id,$image_category) public function delImage($image_id, $id, $image_category)
{ {
$coin_applicate = CoinApplication::getApplicate($id); $coin_applicate = CoinApplication::getApplicate($id);
if($coin_applicate){ if ($coin_applicate) {
if($image_category == 1){ //app图片 if ($image_category == 1) { //app图片
$image_ids_field = 'image_ids'; $image_ids_field = 'image_ids';
}else if($image_category == 2){ //h5图片 } else if ($image_category == 2) { //h5图片
$image_ids_field = 'h5_image_ids'; $image_ids_field = 'h5_image_ids';
} }
$image_ids = $coin_applicate->$image_ids_field; $image_ids = $coin_applicate->$image_ids_field;
$image_items = explode(',',$image_ids); $image_items = explode(',', $image_ids);
$image_items = array_diff($image_items,[$image_id]); $image_items = array_diff($image_items, [$image_id]);
if($image_items){ if ($image_items) {
$image_ids = implode(",",$image_items); $image_ids = implode(",", $image_items);
}else{ } else {
$image_ids = ''; $image_ids = '';
} }
$coin_applicate->$image_ids_field = $image_ids; $coin_applicate->$image_ids_field = $image_ids;
$coin_applicate->save(); $coin_applicate->save();
return ['code' => 0,'msg' => '图片删除成功']; return ['code' => 0, 'msg' => '图片删除成功'];
}else{ } else {
return ['code' => 1,'msg' => '应用不存在']; return ['code' => 1, 'msg' => '应用不存在'];
} }
} }
......
<?php
/**
* Created by PhpStorm.
* User: rlgyzhcn
* Date: 18-5-31
* Time: 下午6:23
*/
?>
<style>
.layui-form-label {
width: 100px;
}
</style>
<div class="layui-row" style="padding: 5px;">
<div class="layui-col-md12">
<form class="layui-form" method="post" action="" id="coinEdit">
<input name="_csrf" type="hidden" value="<?= Yii::$app->request->getCsrfToken() ?>">
<input name="id" type="hidden" value="<?= $model->id ?>">
<div class="layui-inline">
<label class="layui-form-label">中文名</label>
<div class="layui-input-block" style="width: 250px">
<input class="layui-input" name="name_json[]" value="<?= $model->name_json['zh-CN'] ?>">
</div>
</div>
<div class="layui-inline">
<label class="layui-form-label">英文名</label>
<div class="layui-input-block" style="width: 250px">
<input class="layui-input" name="name_json[]" value="<?= $model->name_json['en-US'] ?>">
</div>
</div>
<div class="layui-inline">
<label class="layui-form-label">日文名</label>
<div class="layui-input-block" style="width: 250px">
<input class="layui-input" name="name_json[]" value="<?= $model->name_json['ja'] ?>">
</div>
</div>
<div class="layui-form-item layui-form-text">
<label class="layui-form-label">排序</label>
<div class="layui-input-block">
<input type="text" name="sort" required lay-verify="required" placeholder=""
autocomplete="off"
class="layui-input">
</div>
</div>
<div class="layui-form-item">
<div class="layui-inline">
<label class="layui-form-label">图标</label>
<div class="layui-input-block">
<img src="" style="margin-top: 11px; max-width: 32px; max-height: 32px"
id="icon1">
</div>
<input type="hidden" name="icon" value="">
</div>
<div class="layui-inline" style="margin-left: 50px;">
<button type="button" class="layui-btn" id="upload1" style="">
<i class="layui-icon">&#xe67c;</i>上传新图片
</button>
</div>
</div>
<div class="layui-form-item">
<div class="layui-inline">
<label class="layui-form-label">banner</label>
<div class="layui-input-block">
<img src="<?= $model->banner_image_url ?>" style="margin-top: 11px; max-width: 32px; max-height: 32px" id="icon2">
</div>
<input type="hidden" name="banner" value="">
</div>
<div class="layui-inline" style="margin-left: 50px;">
<button type="button" class="layui-btn" id="upload2" style="">
<i class="layui-icon">&#xe67c;</i>上传新图片
</button>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">banner链接</label>
<div class="layui-input-block">
<input type="text" name="banner_url" required lay-verify="required" placeholder=""
autocomplete="off" class="layui-input" value="<?= $model->banner_url ?>">
</div>
</div>
</form>
</div>
</div>
<script>
var laydate = layui.laydate;
laydate.render({
elem: "#time1"
});
//图片上传
var uploader = layui.upload;
$_csrf = $("input[name='_csrf']").val();
uploader.render({
elem: "#upload1",
url: '/admin/coin/upload',
data: {_csrf: $_csrf},
done: function (res) {
console.log(res.data.src);
$("input[name='icon']").val(res.data.src);
$("#icon1").attr('src', res.data.src);
},
error: function (res) {
}
});
//form render
var form = layui.form;
form.render();
</script>
...@@ -185,6 +185,7 @@ ...@@ -185,6 +185,7 @@
var event = obj.event; var event = obj.event;
var data = obj.data; var data = obj.data;
if (event === 'edit') { if (event === 'edit') {
console.log(data);
var index = layer.open({ var index = layer.open({
title: '编辑应用分类', title: '编辑应用分类',
area: '800px', area: '800px',
......
<?php
/**
* Created by PhpStorm.
* User: rlgyzhcn
* Date: 18-5-31
* Time: 上午9:59
*/
use backend\assets\applicationCategory\IndexAsset;
IndexAsset::register($this);
?>
<style>
.layui-table-tips-c {
padding: 0px;
}
</style>
<h4>应用分类列表</h4>
<div class="layui-row">
<div class="layui-col-md1">
<a href="/admin/coin/add">
<button class="layui-btn layui-btn-default" id="add">添加应用分类</button>
</a>
</div>
<div class="layui-col-md8">
<form class="layui-form" method="get" action="">
<div class="layui-inline">
<label class="layui-form-label" style="margin-bottom: 0; width: 100px;">币种名称</label>
<div class="layui-input-inline">
<input class="layui-input" name="name">
</div>
</div>
<div class="layui-inline">
<button class="layui-btn" lay-submit lay-filter="form1">搜索</button>
</div>
</form>
</div>
</div>
<div class="layui-row">
<table class="layui-table" id="table1" lay-filter="table1"></table>
</div>
<script type="text/html" id="iconTpl">
<img src="{{d.icon_url}}" style="max-width: 32px; max-height: 32px;"/>
</script>
<!--<script type="text/html" id="operationTpl">-->
<!-- <a lay-event="edit">-->
<!-- <button class="layui-btn layui-btn-sm"><i class="layui-icon">&#xe642;</i></button>-->
<!-- </a>-->
<!-- <a lay-event="delete">-->
<!-- <button class="layui-btn layui-btn-sm layui-btn-danger"><i class="layui-icon">&#xe640;</i></button>-->
<!-- </a>-->
<!--</script>-->
<script type="text/html" id="operationTpl">
<a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>
<a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>
<a class="layui-btn layui-btn-primary layui-btn-xs" href="/admin/application/list?id={{d.id}}" >应用列表</a>
<a class="layui-btn layui-btn-normal layui-btn-xs" href="/admin/application-category/banner-index?id={{d.id}}" >banner图管理</a>
</script>
<script type="text/html" id="recommendTpl">
<input type="checkbox" name="isrecommend" value="{{d.id}}" lay-skin="switch" lay-text="是|否" lay-filter="recommendDemo" {{ d.isrecommend == 1 ? 'checked' : '' }}>
</script>
<script type="text/html" id="enableTpl">
<input type="checkbox" name="isenable" value="{{d.id}}" lay-skin="switch" lay-text="启用|禁用" lay-filter="enableDemo" {{ d.enable == 1 ? 'checked' : '' }}>
</script>
...@@ -46,9 +46,21 @@ ...@@ -46,9 +46,21 @@
</div> </div>
</div> </div>
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-form-label">应用名称</label> <label class="layui-form-label">中文名</label>
<div class="layui-input-block"> <div class="layui-input-block">
<input class="layui-input" name="name" value="" lay-verify="required"> <input class="layui-input" name="name[]" value="" lay-verify="required">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">英文名</label>
<div class="layui-input-block">
<input class="layui-input" name="name[]" value="" lay-verify="required">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">日文名</label>
<div class="layui-input-block">
<input class="layui-input" name="name[]" value="" lay-verify="required">
</div> </div>
</div> </div>
<div class="layui-form-item"> <div class="layui-form-item">
......
...@@ -48,9 +48,21 @@ ...@@ -48,9 +48,21 @@
</div> </div>
</div> </div>
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-form-label">应用名称</label> <label class="layui-form-label">中文名</label>
<div class="layui-input-block"> <div class="layui-input-block">
<input class="layui-input" name="name" value="<?= $item['name'] ?>" lay-verify="required"> <input class="layui-input" name="name[]" value="<?= $item['name_zh'] ?>" lay-verify="required">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">英文名</label>
<div class="layui-input-block">
<input class="layui-input" name="name[]" value="<?= $item['name_en'] ?>" lay-verify="required">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">日文名</label>
<div class="layui-input-block">
<input class="layui-input" name="name[]" value="<?= $item['name_ja'] ?>" lay-verify="required">
</div> </div>
</div> </div>
<div class="layui-form-item"> <div class="layui-form-item">
......
...@@ -27,7 +27,7 @@ ...@@ -27,7 +27,7 @@
<!-- 添加页面 --> <!-- 添加页面 -->
<div class="layui-row" style="display: none;padding: 5px;" id="_form"> <div class="layui-row" style="display: none;padding: 5px;" id="_form">
<div class="layui-col-xs6 layui-col-sm6 layui-col-md11"> <div class="layui-col-xs6 layui-col-sm6 layui-col-md11">
<form class="layui-form" action="javascript:void(0)" id="form1" method="post" lay-filter="form1"> <form class="layui-form" action="javascript:void(0)" id="form1" method="post" lay-filter="form1">
<input type="hidden" name="_csrf" value="<?= Yii::$app->request->getCsrfToken() ?>"> <input type="hidden" name="_csrf" value="<?= Yii::$app->request->getCsrfToken() ?>">
<input id="app_id" name="app_id" type="hidden" value=""> <input id="app_id" name="app_id" type="hidden" value="">
<div class="layui-form-item"> <div class="layui-form-item">
...@@ -58,13 +58,15 @@ ...@@ -58,13 +58,15 @@
<a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a> <a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>
<a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a> <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>
<a class="layui-btn layui-btn-normal layui-btn-xs" lay-event="add_category">添加所属分类</a> <a class="layui-btn layui-btn-normal layui-btn-xs" lay-event="add_category">添加所属分类</a>
<a class="layui-btn layui-btn-primary layui-btn-xs" href="/admin/application/image-index?id={{d.id}}" >详情图管理</a> <a class="layui-btn layui-btn-primary layui-btn-xs" href="/admin/application/image-index?id={{d.id}}">详情图管理</a>
</script> </script>
<script type="text/html" id="recommendTpl"> <script type="text/html" id="recommendTpl">
<input type="checkbox" name="isrecommend" value="{{d.id}}" lay-skin="switch" lay-text="是|否" lay-filter="recommendDemo" {{ d.isrecommend == 1 ? 'checked' : '' }}> <input type="checkbox" name="isrecommend" value="{{d.id}}" lay-skin="switch" lay-text="是|否"
lay-filter="recommendDemo" {{ d.isrecommend== 1 ? 'checked' : '' }}>
</script> </script>
<script type="text/html" id="enableTpl"> <script type="text/html" id="enableTpl">
<input type="checkbox" name="isenable" value="{{d.id}}" lay-skin="switch" lay-text="启用|禁用" lay-filter="enableDemo" {{ d.enable == 1 ? 'checked' : '' }}> <input type="checkbox" name="isenable" value="{{d.id}}" lay-skin="switch" lay-text="启用|禁用" lay-filter="enableDemo"
{{ d.enable== 1 ? 'checked' : '' }}>
</script> </script>
<script type="text/javascript"> <script type="text/javascript">
var form = layui.form; var form = layui.form;
...@@ -75,7 +77,7 @@ ...@@ -75,7 +77,7 @@
elem: '#table1', elem: '#table1',
page: true, page: true,
limit: 10, limit: 10,
url: '/admin/application/list?id='+category_id, url: '/admin/application/list?id=' + category_id,
cols: [[ cols: [[
{ {
field: 'id', field: 'id',
...@@ -84,6 +86,14 @@ ...@@ -84,6 +86,14 @@
{ {
field: 'name', field: 'name',
title: '名称', title: '名称',
templet: function (data) {
//var name = JSON.parse(data.name);
//var name = eval("(" + data.name + ")")
// var obj = eval("(" + data.name + ')');
// console.log(obj);
// console.log(data.name);
return data.name;
}
}, },
{ {
...@@ -94,26 +104,26 @@ ...@@ -94,26 +104,26 @@
{ {
field: 'sort', field: 'sort',
title: '排序', title: '排序',
edit: 'text' edit: 'text'
}, },
{ {
field: 'has_h5', field: 'has_h5',
title: 'h5', title: 'h5',
templet: function(d){ templet: function (d) {
if(d.has_h5){ if (d.has_h5) {
return "有"; return "有";
}else{ } else {
return "无"; return "无";
} }
} }
}, },
{ {
field: 'has_android', field: 'has_android',
title: '安卓', title: '安卓',
templet: function(d){ templet: function (d) {
if(d.has_android){ if (d.has_android) {
return "有"; return "有";
}else{ } else {
return "无"; return "无";
} }
} }
...@@ -121,14 +131,14 @@ ...@@ -121,14 +131,14 @@
{ {
field: 'has_ios', field: 'has_ios',
title: 'ios', title: 'ios',
templet: function(d){ templet: function (d) {
if(d.has_ios === 3){ if (d.has_ios === 3) {
return "企业版/商店版"; return "企业版/商店版";
}else if(d.has_ios === 2){ } else if (d.has_ios === 2) {
return "商店版"; return "商店版";
}else if(d.has_ios === 1){ } else if (d.has_ios === 1) {
return "企业版"; return "企业版";
}else{ } else {
return "无"; return "无";
} }
} }
...@@ -153,15 +163,15 @@ ...@@ -153,15 +163,15 @@
]], ]],
}); });
table.on('tool(table1)', function(obj) { table.on('tool(table1)', function (obj) {
var data = obj.data; var data = obj.data;
var event = obj.event; var event = obj.event;
if (event === 'edit') { if (event === 'edit') {
$.get('/admin/application/edit', {id: data.id,category_id:category_id}, function (str) { $.get('/admin/application/edit', {id: data.id, category_id: category_id}, function (str) {
var editIndex = layer.open({ var editIndex = layer.open({
type: 1, type: 1,
title: '编辑: ' + data.name, title: '编辑: ' + data.name,
area: ['625px','800px'], area: ['625px', '800px'],
content: str, content: str,
btn: ['保存', '取消'], btn: ['保存', '取消'],
btn1: function () { btn1: function () {
...@@ -182,31 +192,31 @@ ...@@ -182,31 +192,31 @@
}); });
} else if ('del' === event) { } else if ('del' === event) {
var index = layer.confirm("确认删除?", {icon: 3, title: '删除'}, function () { var index = layer.confirm("确认删除?", {icon: 3, title: '删除'}, function () {
$.get('/admin/application/delete', {id: data.id,category_id:category_id}, function (rev) { $.get('/admin/application/delete', {id: data.id, category_id: category_id}, function (rev) {
layer.msg(rev.msg); layer.msg(rev.msg);
if (0==rev.code) { if (0 == rev.code) {
table.reload('table1',{ table.reload('table1', {
page:{curr:1} page: {curr: 1}
}); });
} }
}); });
}); });
}else if ('add_category' === event) { } else if ('add_category' === event) {
$("#app_id").val(data.id); $("#app_id").val(data.id);
var index = layer.open({ var index = layer.open({
title: '添加应用分类', title: '添加应用分类',
area: ['500px','400px'], area: ['500px', '400px'],
type: 1, type: 1,
content: $("#_form"), content: $("#_form"),
btn: ['保存', '取消'], btn: ['保存', '取消'],
success: function() { success: function () {
form.val("form1", { form.val("form1", {
cate_id: 0, cate_id: 0,
sort: '', sort: '',
}); });
}, },
btn1: function() { btn1: function () {
$.post('/admin/application/add-category', $("#form1").serialize(), function(rev) { $.post('/admin/application/add-category', $("#form1").serialize(), function (rev) {
layer.msg(rev.msg); layer.msg(rev.msg);
if (0 == rev.code) { if (0 == rev.code) {
layer.close(index); layer.close(index);
...@@ -214,63 +224,63 @@ ...@@ -214,63 +224,63 @@
} }
}); });
}, },
btn2: function() { btn2: function () {
layer.close(index); layer.close(index);
$("#_form").css('display', 'none'); $("#_form").css('display', 'none');
}, },
cancel: function() { cancel: function () {
layer.close(index); layer.close(index);
$("#_form").css('display', 'none'); $("#_form").css('display', 'none');
} }
}); });
} }
}); });
form.on('switch(recommendDemo)', function(obj){ form.on('switch(recommendDemo)', function (obj) {
//layer.tips(this.value + ' ' + this.name + ':'+ obj.elem.checked, obj.othis);return; //layer.tips(this.value + ' ' + this.name + ':'+ obj.elem.checked, obj.othis);return;
if(obj.elem.checked){ if (obj.elem.checked) {
$.get('/admin/applicate-recommend/add', {id:this.value,type:2}, function(rev) { $.get('/admin/applicate-recommend/add', {id: this.value, type: 2}, function (rev) {
layer.msg(rev.msg); layer.msg(rev.msg);
if (0 == rev.code) { if (0 == rev.code) {
}else{ } else {
} }
}); });
}else{ } else {
$.get('/admin/applicate-recommend/delete', {id:this.value,type:2}, function(rev) { $.get('/admin/applicate-recommend/delete', {id: this.value, type: 2}, function (rev) {
layer.msg(rev.msg); layer.msg(rev.msg);
if (0 == rev.code) { if (0 == rev.code) {
}else{ } else {
} }
}); });
} }
}); });
form.on('switch(enableDemo)', function(obj){ form.on('switch(enableDemo)', function (obj) {
var enable = 1; var enable = 1;
if(obj.elem.checked){ if (obj.elem.checked) {
enable = 1 enable = 1
}else{ } else {
enable = 0; enable = 0;
} }
$.get('/admin/application/set-enable', {id:this.value,enable:enable}, function(rev) { $.get('/admin/application/set-enable', {id: this.value, enable: enable}, function (rev) {
layer.msg(rev.msg); layer.msg(rev.msg);
if (0 == rev.code) { if (0 == rev.code) {
}else{ } else {
} }
}); });
}); });
//监听单元格编辑 //监听单元格编辑
table.on('edit(table1)', function(obj){ table.on('edit(table1)', function (obj) {
var value = obj.value; //得到修改后的值 var value = obj.value; //得到修改后的值
var data = obj.data; //得到所在行所有键值 var data = obj.data; //得到所在行所有键值
$.get('/admin/application/set-sort', {id:data.id,category_id:category_id,sort:value}, function(rev) { $.get('/admin/application/set-sort', {id: data.id, category_id: category_id, sort: value}, function (rev) {
layer.msg(rev.msg); layer.msg(rev.msg);
if (0 == rev.code) { if (0 == rev.code) {
table.reload('table1',{}); table.reload('table1', {});
}else{ } else {
} }
}); });
......
<?php <?php
/** /**
* Created by PhpStorm. * Created by PhpStorm.
* User: rlgyzhcn * User: rlgyzhcn
* Date: 18-5-31 * Date: 18-5-31
* Time: 上午9:59 * Time: 上午9:59
*/ */
use backend\assets\coin\IndexAsset; use backend\assets\coin\IndexAsset;
IndexAsset::register($this); IndexAsset::register($this);
?> ?>
<style> <style>
.layui-table-tips-c { .layui-table-tips-c {
padding: 0px; padding: 0px;
} }
</style> </style>
<h4>币种列表</h4> <h4>币种列表</h4>
<div class="layui-row"> <div class="layui-row">
<div class="layui-col-md1"> <div class="layui-col-md1">
<a href="/admin/coin/add"> <a href="/admin/coin/add">
<button class="layui-btn layui-btn-default" id="add">添加币种</button> <button class="layui-btn layui-btn-default" id="add">添加币种</button>
</a> </a>
</div> </div>
<div class="layui-col-md8"> <div class="layui-col-md8">
<form class="layui-form" method="get" action=""> <form class="layui-form" method="get" action="">
<div class="layui-inline"> <div class="layui-inline">
<label class="layui-form-label" style="margin-bottom: 0; width: 100px;">币种名称</label> <label class="layui-form-label" style="margin-bottom: 0; width: 100px;">币种名称</label>
<div class="layui-input-inline"> <div class="layui-input-inline">
<input class="layui-input" name="name"> <input class="layui-input" name="name">
</div> </div>
</div> </div>
<div class="layui-inline"> <div class="layui-inline">
<label class="layui-form-label" style="margin-bottom: 0; width: 100px;">平台</label> <label class="layui-form-label" style="margin-bottom: 0; width: 100px;">平台</label>
<div class="layui-input-inline"> <div class="layui-input-inline">
<select name="platform"> <select name="platform">
<option value="">全部</option> <option value="">全部</option>
<?php foreach ($platforms as $platform): ?> <?php foreach ($platforms as $platform): ?>
<option value="<?= $platform ?>"><?= $platform ?></option> <option value="<?= $platform ?>"><?= $platform ?></option>
<?php endforeach; ?> <?php endforeach; ?>
</select> </select>
</div> </div>
</div> </div>
<div class="layui-inline"> <div class="layui-inline">
<label class="layui-form-label" style="margin-bottom: 0; width: 100px;">类型</label> <label class="layui-form-label" style="margin-bottom: 0; width: 100px;">类型</label>
<div class="layui-input-inline"> <div class="layui-input-inline">
<select name="chain"> <select name="chain">
<option value="">全部</option> <option value="">全部</option>
<?php foreach ($chains as $chain): ?> <?php foreach ($chains as $chain): ?>
<option value="<?= $chain ?>"><?= $chain ?></option> <option value="<?= $chain ?>"><?= $chain ?></option>
<?php endforeach; ?> <?php endforeach; ?>
</select> </select>
</div> </div>
</div> </div>
<div class="layui-inline"> <div class="layui-inline">
<label class="layui-form-label" style="margin-bottom: 0; width: 100px;">推介币种</label> <label class="layui-form-label" style="margin-bottom: 0; width: 100px;">推介币种</label>
<div class="layui-input-inline"> <div class="layui-input-inline">
<select name="recommend"> <select name="recommend">
<option value="">全部</option> <option value="">全部</option>
<option value="0"></option> <option value="0"></option>
<option value="1"></option> <option value="1"></option>
</select> </select>
</div> </div>
</div> </div>
<div class="layui-inline"> <div class="layui-inline">
<button class="layui-btn" lay-submit lay-filter="form1">搜索</button> <button class="layui-btn" lay-submit lay-filter="form1">搜索</button>
</div> </div>
</form> </form>
</div> </div>
</div> </div>
<div class="layui-row"> <div class="layui-row">
<table class="layui-table" id="table1" lay-filter="table1"></table> <table class="layui-table" id="table1" lay-filter="table1"></table>
</div> </div>
<script type="text/html" id="iconTpl"> <script type="text/html" id="iconTpl">
<a href="{{d.icon}}" target="_blank"><img src="{{d.icon}}" style="max-width: 32px; max-height: 32px;"/></a> <a href="{{d.icon}}" target="_blank"><img src="{{d.icon}}" style="max-width: 32px; max-height: 32px;"/></a>
</script> </script>
<script type="text/html" id="officialTpl"> <script type="text/html" id="officialTpl">
{{# if(d.official){ }} {{# if(d.official){ }}
{{# layui.each(d.official.split(';'),function(index,item){ }} {{# layui.each(d.official.split(';'),function(index,item){ }}
{{# if(item){ }} {{# if(item){ }}
<a href="{{ item }}" class="layui-table-link" target="_blank">官网{{# if(index){ }}{{index}}{{# } }}</a> <a href="{{ item }}" class="layui-table-link" target="_blank">官网{{# if(index){ }}{{index}}{{# } }}</a>
{{# } }} {{# } }}
{{# }); }} {{# }); }}
{{# }else{ }} {{# }else{ }}
- -
{{# } }} {{# } }}
</script> </script>
<script type="text/html" id="paperTpl"> <script type="text/html" id="paperTpl">
{{# if(d.paper){ }} {{# if(d.paper){ }}
<a href="{{d.paper}}" class="layui-table-link" target="_blank">白皮书</a> <a href="{{d.paper}}" class="layui-table-link" target="_blank">白皮书</a>
{{# }else{ }} {{# }else{ }}
- -
{{# } }} {{# } }}
</script> </script>
<script type="text/html" id="operationTpl"> <script type="text/html" id="operationTpl">
<a lay-event="edit"> <a lay-event="edit">
<button class="layui-btn layui-btn-sm"><i class="layui-icon">&#xe642;</i></button> <button class="layui-btn layui-btn-sm"><i class="layui-icon">&#xe642;</i></button>
</a> </a>
<a lay-event="delete"> <a lay-event="delete">
<button class="layui-btn layui-btn-sm layui-btn-danger"><i class="layui-icon">&#xe640;</i></button> <button class="layui-btn layui-btn-sm layui-btn-danger"><i class="layui-icon">&#xe640;</i></button>
</a> </a>
</script> </script>
<script type="text/html" id="exchangeTpl"> <script type="text/html" id="exchangeTpl">
{{d.exchange}} {{d.exchange}}
</script> </script>
<script type="text/html" id="recommendTpl"> <script type="text/html" id="recommendTpl">
{{# if(d.recommend==0){ }} {{# if(d.recommend==0){ }}
{{# }else if(d.recommend==1){ }} {{# }else if(d.recommend==1){ }}
首页推荐 首页推荐
{{# }else{ }} {{# }else{ }}
次页推荐 次页推荐
{{# } }} {{# } }}
</script> </script>
\ No newline at end of file
/**
* @author rlgyzhcn@qq.com
*/
var table = layui.table;
var form = layui.form;
var layer = layui.layer;
form.render();
var tableIns = table.render({
elem: "#table1",
url: '/admin/application-category/index',
limit: 10,
page: 1,
loading: true,
cols: [[
{field: 'name', title: '名称'},
{field: 'coin_name', title: '名称'},
{field: 'icon_url', title: '图标', templet: '#iconTpl'},
{field: 'isrecommend',title: '首页推荐',templet: '#recommendTpl',width: 100},
{field: 'enable',title: '状态',templet: '#enableTpl',width: 100},
{field: 'id', title: '操作', templet: '#operationTpl'}
]],
});
form.on('submit(form1)', function (data) {
table.reload("table1", {
where: data.field,
page: {curr: 1},
});
return false;
});
//监听单元格事件
table.on('tool(table1)', function (obj) {
var data = obj.data;
if (obj.event === 'getExchange') {
var load = layer.load(1);
$.get('/admin/coin/get-exchange-list-by-id?id=' + obj.data.id, {}, function (str) {
layer.close(load);
layer.open({
type: 1,
title: '上架交易所列表',
content: str,
});
});
} else if (obj.event == 'delete') {
layer.confirm('真的要删除' + data.name + '吗?', {icon: 3, title: '删除'}, function (index) {
layer.close(index);
//向服务端发送删除指令
$.get('/admin/coin/delete?id=' + obj.data.id, function (data, status) {
if (data.code == 0) {
obj.del(); //删除对应行(tr)的DOM结构
}
layer.msg(data.msg);
});
});
} else if (obj.event == 'edit') {
$.get('/admin/application-category/edit', {id: data.id}, function (str) {
var editIndex = layer.open({
type: 1,
title: '编辑: ' + data.name,
area: '625px',
content: str,
btn: ['保存', '取消'],
btn1: function () {
// console.log();
$.post('/admin/coin/edit', $("#coinEdit").serialize(), function (rev) {
layer.msg(rev.msg);
if (rev.code == 0) {
table.reload("table1", {
where: data.field,
});
layer.close(editIndex);
}
});
}
});
});
}
});
form.on('switch(recommendDemo)', function(obj){
//layer.tips(this.value + ' ' + this.name + ':'+ obj.elem.checked, obj.othis);return;
if(obj.elem.checked){
$.get('/admin/applicate-recommend/add', {id:this.value,type:1}, function(rev) {
layer.msg(rev.msg);
if (0 == rev.code) {
}else{
}
});
}else{
$.get('/admin/applicate-recommend/delete', {id:this.value,type:1}, function(rev) {
layer.msg(rev.msg);
if (0 == rev.code) {
}else{
}
});
}
});
form.on('switch(enableDemo)', function(obj){
var enable = 1;
if(obj.elem.checked){
enable = 1
}else{
enable = 0;
}
$.get('/admin/application-category/set-enable', {id:this.value,enable:enable}, function(rev) {
layer.msg(rev.msg);
if (0 == rev.code) {
}else{
}
});
});
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment