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'); } }