示例#1
0
 public function run()
 {
     $isapi = $this->getInput('type');
     $ismodule = $this->getInput('ismodule');
     $model = $this->getInput('model');
     $moduleid = $this->getInput('moduleid');
     $modulename = $this->getInput('name');
     $pageid = $this->getInput('pageid');
     $page = (int) $this->getInput('page', 'get');
     $perpage = 10;
     $page = $page > 1 ? $page : 1;
     list($start, $perpage) = Pw::page2limit($page, $perpage);
     $ds = $this->_getDesignModuleDs();
     Wind::import('SRV:design.srv.vo.PwDesignModuleSo');
     $vo = new PwDesignModuleSo();
     $vo->setIsUse(1);
     if ($isapi == 'api') {
         $vo->setModuleType(PwDesignModule::TYPE_SCRIPT);
         $args['type'] = 'api';
     } else {
         $vo->setModuleType(PwDesignModule::TYPE_DRAG | PwDesignModule::TYPE_IMPORT);
     }
     if ($model) {
         $vo->setModelFlag($model);
         $args['model'] = $model;
     }
     if ($moduleid > 0) {
         $vo->setModuleId($moduleid);
         $args['moduleid'] = $moduleid;
     }
     if ($modulename) {
         $vo->setModuleName($modulename);
         $args['name'] = $modulename;
     }
     if ($pageid) {
         $vo->setPageId($pageid);
         $args['pageid'] = $pageid;
     }
     $vo->orderbyModuleId(false);
     $list = $ds->searchModule($vo, $start, $perpage);
     $count = $ds->countModule($vo);
     Wind::import('SRV:design.bo.PwDesignModelBo');
     $pageDs = $this->_getPageDs();
     foreach ($list as $k => $v) {
         $list[$k]['pageInfo'] = $pageDs->getPage($v['page_id']);
         $bo = new PwDesignModelBo($v['model_flag']);
         $model = $bo->getModel();
         $list[$k]['isdata'] = true;
         if ($model['tab'] && !in_array('data', $model['tab'])) {
             $list[$k]['isdata'] = false;
         }
     }
     $this->setOutput($this->_getDesignService()->getModelList(), 'models');
     $this->setOutput($args, 'args');
     $this->setOutput($list, 'list');
     $this->setOutput($count, 'count');
     $this->setOutput($page, 'page');
     $this->setOutput($perpage, 'perpage');
     $this->setOutput(ceil($count / $perpage), 'totalpage');
     $this->setOutput('design/module/run', 'pageurl');
     $this->setOutput($isapi, 'isapi');
     if ($isapi == 'api') {
         $this->setTemplate('module_api');
     }
 }