首页 > 代码库 > 前端到后台ThinkPHP开发整站(4)

前端到后台ThinkPHP开发整站(4)

  今晚继续我的这个项目的开发,今晚也是写的不多,主要写了一个菜单管理功能的CURD方法,前端界面还没有进行编写。

  菜单管理Model层的代码:

<?php
namespace Common\Model;
use Think\Model;

class MenuModel extends Model{
	private $_db=‘‘;
	
	public function __construct(){
		$this->_db=M("menu");
	}
	
	/**
	 * 插入菜单数据
	 */
	public function insert($data=http://www.mamicode.com/array()){"menu_id={}$id")->find();
	}
	
	/**
	 * 根据ID更新菜单
	 */
	public function updateMenuById($id,$data){
		if(!$id || !is_numeric($id)){
			throw_exception("ID不合法");
		}
		
		if(!$data || !is_array($data)){
			throw_exception(‘更新的数据不合法‘);
		}
		
		return $this->_db->where("menu_id={$id}")->save($data);
	}
	
	/**
	 * 更新排队序号
	 */
	public function updateMenuListOrderById($id,$listorder){
		if(!$id || !is_numeric($id)){
			throw_exception(‘ID不合法‘);
		}
		$data=http://www.mamicode.com/array("menu_id={$id}")->save($data);
	}
	
	/**
	 * 获取后台菜单
	 */
	public function getAdminMenus(){
		$data=http://www.mamicode.com/array(>

    菜单管理控制器类的代码:

<?php
namespace Admin\Controller;
use Think\Controller;

class MenuController extends  CommonController{
	
	public function index(){
		$data=http://www.mamicode.com/array();"Menu")->insert($_POST);
			if($menuId){
				return jsonResult(1, ‘新增成功‘, $menuId);
			}
			return jsonResult(0, ‘新增失败‘, $menuId);
		}else{
			$this->display();
		}
	}
	
	public function edit(){
		$menuId=$_REQUEST[‘id‘];
		$menu=D("Menu")->find($menuId);
		$this->assign(‘menu‘,$menu);
		$this->display();		
	}
	
	public function save($data){
		$menuId=$data[‘menu_id‘];
		unset($data[‘menu_id‘]);
		
		try{
			$id=D("Menu")->updateMenuById($menuid,$data);
			if($id===FALSE){
				return jsonResult(0, ‘保存失败‘);
			}
			return jsonResult(0,‘保存成‘);
		}catch(Exception $ex){
			return jsonResult(0,$ex->getMessage());
		}
	}
	
	public function setStatus(){
		try{
			if($_POST){
				$id=$_POST[‘id‘];
				$status=$_POST[‘status‘];
				$ret=D("Menu")->updateStatusById($id,$status);
				if($ret){
					return jsonResult(1,‘操作成功‘);
				}else{
					return jsonResult(0,‘操作失败‘);
				}
			}
		}catch(Exception $ex){
			return jsonResult(0,$ex->getMessage());
		}
		return jsonResult(0,‘没有提交数据‘);
	}
	
	/**
	 * 数据排序
	 */
	public function listorder(){
		$listoreder=$_POST[‘listorder‘];
		$data =http://www.mamicode.com/array(‘jump_url‘=> $_SERVER[‘HTTP_REFERER‘]);"Menu")->updateMenuListorderById($menuId,$v);
					if($id===false){
						$errors[]=$menuId;
					}
				}
			}catch(Exception $ex){
				return jsonResult(0, $ex->getMessage(), $data)
			}
			if($errors){
				return jsonResult(0,"排序失败-".implode(‘,‘, $errors), $data);
			}
			return jsonResult(1, ‘排序成功‘, $data)
		}
		return jsonResult(0,‘数据排序失败‘, $data);
	}
}
?>

  今晚就暂时写这么点,明晚开始做前端的开发,明天就周五了,如果周六不用加班,我会加大马力在这周内结束该项目的。(^_?)☆

源码地址:https://github.com/YoZiLin/TP-CMS

前端到后台ThinkPHP开发整站(4)