| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295 | 
							- <?php
 
- /**
 
-  * CommonController.php UTF-8
 
-  *
 
-  *
 
-  * @date    : 2020/9/14 15:10
 
-  *
 
-  * @license 这不是一个自由软件,未经授权不许任何使用和传播。
 
-  * @author  : chenbingling <cbl@huosdk.com>
 
-  * @version : H5IOS 1.0
 
-  */
 
- namespace huosdk\h5ios\admin\controller;
 
- use cmf\controller\AdminBaseController;
 
- use cmf\view\Filter;
 
- use huolib\constant\CommonConst;
 
- use huolib\status\CommonStatus;
 
- use huolib\tool\Page;
 
- class CommonController extends AdminBaseController {
 
-     protected $logic_class_name    = '';
 
-     protected $model_class_name    = '';
 
-     protected $validate_class_name = '';
 
-     protected $class_name          = '';
 
-     protected $order               = '-id';
 
-     protected $field_arr           = [];
 
-     protected $index_url           = '';
 
-     protected $add_url             = '';
 
-     protected $edit_url            = '';
 
-     protected $delete_url          = '';
 
-     protected $delete_index_url    = '';
 
-     protected $detail_url          = '';
 
-     protected $base_url            = '/adminh5ios/';
 
-     protected $app                 = 'adminh5ios';
 
-     function _initialize() {
 
-         $this->lang_index = 'ADMINH5IOS_'.$this->class_name.'_INDEX';
 
-         $this->lang_add = 'ADMINH5IOS_'.$this->class_name.'_ADD';
 
-         $this->lang_edit = 'ADMINH5IOS_'.$this->class_name.'_EDIT';
 
-         $this->assign('field_arr', $this->field_arr);
 
-         $_url = $this->base_url.$this->class_name;
 
-         $this->index_url = $_url.'/index';
 
-         $this->add_url = $_url.'/add';
 
-         $this->edit_url = $_url.'/edit';
 
-         $this->delete_url = $_url.'/delete';
 
-         $this->detail_url = $_url.'/detail';
 
-         $this->delete_index_url = $_url.'/deleteindex';
 
-         $this->assign('class_name', $this->class_name);
 
-         $this->assign('index_url', $this->index_url);
 
-         $this->assign('add_url', $this->add_url);
 
-         $this->assign('edit_url', $this->edit_url);
 
-         $this->assign('delete_url', $this->delete_url);
 
-         $this->assign('detail_url', $this->detail_url);
 
-         $this->assign('base_url', $_url);
 
-         $this->assign('delete_index_url', $this->delete_index_url);
 
-         parent::_initialize();
 
-     }
 
-     public function _initializeView() {
 
-         $_theme_path = dirname(__DIR__).'/view';
 
-         $_view_replace_str = [
 
-             '__ROOT__'     => '/',
 
-             '__TMPL__'     => "{$_theme_path}",
 
-             '__STATIC__'   => STATICSITE.'/admin',
 
-             '__WEB_ROOT__' => ''
 
-         ];
 
-         $_view_replace_str = array_merge(config('view_replace_str'), $_view_replace_str);
 
-         config('template.view_base', "$_theme_path/");
 
-         config('view_replace_str', $_view_replace_str);
 
-     }
 
-     /**
 
-      * 列表
 
-      *
 
-      * @param string $template
 
-      *
 
-      * @return mixed
 
-      */
 
-     public function index($template = 'common/index') {
 
-         if (CommonConst::CONST_EXPORT == $this->request->param('export/d', 0)) {
 
-             return $this->exportIndex();
 
-         }
 
-         $_param = $this->getSearchParam();
 
-         $_param = $this->trimAll($_param);  //移除所有空格
 
-         /*获取列表数据与分页*/
 
-         $_logic = new $this->logic_class_name();
 
-         $_datas = $_logic->getAdminList(
 
-             $_param, $this->page.','.$this->list_rows, $this->order
 
-         );
 
-         $_page_data = Page::paginate($_datas['count'], $_datas['list'], $this->page, $this->list_rows);
 
-         $this->assign('items', $_page_data);
 
-         $this->assign('page', $_page_data->render());
 
-         return $this->fetch($template);
 
-     }
 
-     /**
 
-      * 添加
 
-      *
 
-      * @param string $template 模板文件
 
-      *
 
-      * @return mixed
 
-      */
 
-     public function add($template = 'add') {
 
-         return $this->fetch($template);
 
-     }
 
-     /**
 
-      * 添加操作函数
 
-      */
 
-     public function addPost() {
 
-         if ($this->request->isPost()) {
 
-             /* 校验参数 */
 
-             $_param = $this->request->param();
 
-             /*校验参数*/
 
-             $_validate = new $this->validate_class_name('add');
 
-             if (!$_validate->check($_param)) {
 
-                 $this->adminError($_validate->getError());
 
-             }
 
-             /* 逻辑处理 */
 
-             $_rs = (new $this->model_class_name())->addData($_param);
 
-             if (false === $_rs) {
 
-                 return $this->adminError(lang('ADD_FAILED'));
 
-             }
 
-             return $this->adminSuccess(lang('ADD_SUCCESS'));
 
-         } else {
 
-             $_code = CommonStatus::INVALID_PARAMS;
 
-             return $this->adminError(CommonStatus::getMsg($_code));
 
-         }
 
-     }
 
-     /**
 
-      * 编辑
 
-      *
 
-      * @param string $template
 
-      *
 
-      * @return mixed
 
-      */
 
-     public function edit($template = 'edit') {
 
-         $_id = $this->request->param('id/d');
 
-         if (empty($_id)) {
 
-             $_code = CommonStatus::INVALID_PARAMS;
 
-             return $this->adminError(CommonStatus::getMsg($_code));
 
-         }
 
-         $_data = (new $this->model_class_name())->getInfoById($_id);
 
-         if (empty($_data)) {
 
-             $_code = CommonStatus::INVALID_PARAMS;
 
-             return $this->adminError(CommonStatus::getMsg($_code));
 
-         }
 
-         $this->assign('data', $_data);
 
-         return $this->fetch($template);
 
-     }
 
-     /**
 
-      * 编辑操作函数
 
-      */
 
-     public function editPost() {
 
-         if ($this->request->isPost()) {
 
-             /* 校验参数 */
 
-             $_param = $this->request->param();
 
-             /*校验参数*/
 
-             $_validate = new $this->validate_class_name('edit');
 
-             if (!$_validate->check($_param)) {
 
-                 return $this->adminError($_validate->getError());
 
-             }
 
-             /* 逻辑处理 */
 
-             $_rs = (new $this->model_class_name())->updateData($_param, $_param['id']);
 
-             if (false === $_rs) {
 
-                 return $this->adminError(lang('EDIT_FAILED'));
 
-             }
 
-             return $this->adminSuccess(lang('EDIT_SUCCESS'));
 
-         } else {
 
-             $_code = CommonStatus::INVALID_PARAMS;
 
-             return $this->adminError(CommonStatus::getMsg($_code));
 
-         }
 
-     }
 
-     /**
 
-      * 删除
 
-      */
 
-     public function delete() {
 
-         $_id = $this->request->param('id/d', 0);
 
-         if (empty($_id)) {
 
-             $_code = CommonStatus::INVALID_PARAMS;
 
-             return $this->adminError(CommonStatus::getMsg($_code));
 
-         }
 
-         $_rs = (new $this->model_class_name())->deleteData($_id);
 
-         if (false === $_rs) {
 
-             return $this->adminError(lang('DELETE_FAILED'));
 
-         }
 
-         return $this->adminSuccess(lang('DELETE_SUCCESS'));
 
-     }
 
-     /**
 
-      * 排序 排序字段为list_orders数组 POST 排序字段为:list_order
 
-      *
 
-      * @param        $model
 
-      * @param string $field
 
-      *
 
-      */
 
-     public function listOrders($model = null, $field = 'list_order') {
 
-         $_rs = parent::listOrders(new $this->model_class_name(), $field);
 
-         if (false == $_rs) {
 
-             $_code = CommonStatus::INNER_ERROR;
 
-             return $this->adminError(CommonStatus::getMsg($_code));
 
-         }
 
-         $_code = CommonStatus::NO_ERROR;
 
-         return $this->adminSuccess(CommonStatus::getMsg($_code));
 
-     }
 
-     /**
 
-      * 单个设置状态
 
-      */
 
-     public function setStatus() {
 
-         $_id = $this->request->param('id/d', 0);
 
-         $_ids = $this->request->param('ids/a', []);
 
-         if (!empty($_id)) {
 
-             $_ids = [$_id];
 
-         }
 
-         $_field = $this->request->param('field/s', 'status');
 
-         $_status = $this->request->param($_field.'/d', 0);
 
-         if ((empty($_ids)) || empty($_status)) {
 
-             $this->adminError(lang('PARAM_ERROR'));
 
-         }
 
-         foreach ($_ids as $_id) {
 
-             $_data[$_field] = $_status;
 
-             $_rs = (new $this->model_class_name())->updateData($_data, $_id);
 
-             if (false === $_rs) {
 
-                 $this->adminError(lang('EDIT_FAILED'));
 
-             }
 
-         }
 
-         $this->adminSuccess(lang('EDIT_SUCCESS'));
 
-     }
 
-     /**
 
-      * 导出数据
 
-      */
 
-     protected function exportIndex() {
 
-     }
 
-     protected function getSearchField() {
 
-         $_fields_type = (new $this->model_class_name())->getFieldType();
 
-         $_param = $this->request->param();
 
-         $_search_param = [];
 
-         foreach ($_fields_type as $_field => $_type) {
 
- //            if (false == isset($_param[$_field]) || empty($_param[$_field])) {
 
- //                continue;
 
- //            }
 
-             if (true == is_array($_type)) {
 
-                 list($_type, $param) = $_type;
 
-             } elseif (strpos($_type, ':')) {
 
-                 list($_type, $param) = explode(':', $_type, 2);
 
-             }
 
-             switch ($_type) {
 
-                 case 'integer':
 
-                 case 'timestamp':
 
-                     $_search_param[$_field] = $this->request->param($_field.'/d', '');
 
-                     break;
 
-                 case 'float':
 
-                     $_search_param[$_field] = $this->request->param($_field.'/f', '');
 
-                     break;
 
-                 default:
 
-                     $_search_param[$_field] = $this->request->param($_field.'/s', '', 'trim');
 
-                     $_input = Filter::text($_field, $_search_param[$_field], lang('MSG_INPUT').lang($_field));
 
-                     $this->assign($_field.'_input', $_input);
 
-                     break;
 
-             }
 
-         }
 
-         return $_search_param;
 
-     }
 
-     /**
 
-      * 搜索参数
 
-      * return array
 
-      */
 
-     protected function getSearchParam() {
 
-         $_param = $this->getSearchField();
 
-         $_param = $this->trimAll($_param);
 
-         return $_param;
 
-     }
 
- }
 
 
  |