dever 7 vuotta sitten
commit
9fa005a6e4

+ 8 - 0
boot.php

@@ -0,0 +1,8 @@
+<?php 
+define('DEVER_PROJECT', 'cab');
+define('DEVER_PROJECT_PATH', dirname(__FILE__) . DIRECTORY_SEPARATOR);
+if (defined('DEVER_PACKAGE')) {
+	include('dever_package/'.DEVER_PACKAGE.'/index.php');
+} else {
+	include('dever/boot.php');
+}

+ 7 - 0
config/base.php

@@ -0,0 +1,7 @@
+<?php
+$config['base'] = array
+(
+	'name' => '售货柜管理',
+	'version' => '1.0.0 Beta',
+);
+return $config;

+ 26 - 0
config/env/localhost/default.php

@@ -0,0 +1,26 @@
+<?php
+
+# 数据库配置
+$config['database'] = array
+(
+	# 默认数据库配置
+	'default' => array
+	(
+		'type' => 'pdo',
+		'host' => array
+		(
+			'read' => 'web-mysql:3306',
+			'update' => 'web-mysql:3306',
+		),
+		'database' => 'cab',
+		'username' => 'root',
+		'password' => '123456',
+		'charset' => 'utf8',
+	),
+);
+
+$config['debug'] = array
+(
+	'log' => array('type' => 'file'),
+);
+return $config;

+ 5 - 0
config/route.php

@@ -0,0 +1,5 @@
+<?php
+return array
+(
+'home' => 'home',
+);

+ 67 - 0
data/compile/cab/main/home.cmp.php

@@ -0,0 +1,67 @@
+<!DOCTYPE html>
+<!--power by dever--><html>
+<head>
+  <meta charset="utf-8">
+  <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
+  <title>售货柜通讯测试</title>
+  <link rel="stylesheet" type="text/css" href="<?php echo Dever::config("host")->script ?>lib/layui/css/layui.css" />
+  <script src="<?php echo Dever::config("host")->script ?>lib/layui/layui.js"></script>
+  <script id="script"><?php  echo Dever::script() ?></script>
+  <script src="<?php echo Dever::config("host")->js ?>sub.js"></script>
+</head>
+<body>
+ 
+<div class="layui-container">
+    <blockquote class="layui-elem-quote"><a id="pdf" href="<?php echo DEVER_APP_HOST . "assets/pdf/msg.pdf" ?>" target="_blank">点此查看协议文档</a></blockquote>
+    <fieldset class="layui-elem-field layui-field-title" style="margin-top: 20px;">
+        <legend>售货柜通讯测试</legend>
+    </fieldset>
+
+
+    <div class="layui-row">
+        <form class="layui-form" action="" lay-filter="form1">
+        <div class="layui-form-item">
+          <label class="layui-form-label">通讯指令</label>
+          <div class="layui-input-block">
+            <input type="text" name="code" id="code" value="52" required="" lay-verify="required" placeholder="请输入通讯指令" autocomplete="off" class="layui-input">
+          </div>
+        </div>
+
+        <div class="layui-form-item">
+          <label class="layui-form-label">发送方ID</label>
+          <div class="layui-input-block">
+            <input type="text" name="from" id="from" value="XXG001" required="" lay-verify="required" placeholder="请输入发送方ID" autocomplete="off" class="layui-input">
+          </div>
+        </div>
+
+        <div class="layui-form-item">
+          <label class="layui-form-label">接收送方ID</label>
+          <div class="layui-input-block">
+            <input type="text" name="to" id="to" value="869300032841441" required="" lay-verify="required" placeholder="请输入接收送方ID" autocomplete="off" class="layui-input">
+          </div>
+        </div>
+
+        <div class="layui-form-item">
+          <label class="layui-form-label">消息ID号</label>
+          <div class="layui-input-block">
+            <input type="text" name="mid" id="mid" value="2" required="" lay-verify="required" placeholder="请输入消息ID号" autocomplete="off" class="layui-input">
+          </div>
+        </div>
+
+        <div class="layui-form-item">
+          <label class="layui-form-label">消息内容</label>
+          <div class="layui-input-block">
+            <textarea type="text" name="msg" id="msg" value='' required="" lay-verify="required" placeholder="请输入消息内容" class="layui-textarea" autocomplete="off"  rows="3" cols="100">0&12312234234sfsfsf</textarea> 
+          </div>
+        </div>
+        <div class="layui-form-item">
+          <div class="layui-input-block">
+            <button class="layui-btn" lay-submit lay-filter="*">立即提交</button>
+          </div>
+        </div>
+      </form>
+    </div>
+</div> 
+
+</body>
+</html>

+ 136 - 0
data/compile/cab/manage/moltran/home.cmp.php

@@ -0,0 +1,136 @@
+<?php $data['manage/database.cookie']=Dever::load('manage/database.cookie') ?>
+<?php $data['manage/auth.notice']=Dever::load('manage/auth.notice') ?>
+<?php $data['manage/menu.fast']=Dever::load('manage/menu.fast') ?>
+<?php $data['manage/auth.config']=Dever::load('manage/auth.config') ?>
+<!DOCTYPE html>
+<?php if(isset($_SERVER["HTTP_X_PJAX"])): ?><?php else: ?><!--power by dever--><html lang="zh-CN">
+<head>
+  
+  <?php require Dever::config("base")->data . 'compile/cab/manage/moltran/inc/head.cmp.php' ?>
+</head>
+  
+<body class="theme-<?php  echo Dever::load("manage/auth.config#template") ?>" test="公告">
+
+<div id="wrapper" class="<?php echo $data['manage/database.cookie']['wrapper'] ?>">
+
+    <?php require Dever::config("base")->data . 'compile/cab/manage/moltran/inc/nav.cmp.php' ?>
+    
+    <?php require Dever::config("base")->data . 'compile/cab/manage/moltran/inc/menu.cmp.php' ?>
+
+            
+            
+                                  
+            <div class="content-page">
+                
+                <div class="content"><?php endif; ?>
+                    <div class="container">
+
+                        
+                        <div class="row">
+                            <div class="col-sm-12">
+                                <h4 class="pull-left page-title">控制台</h4>
+                                <ol class="breadcrumb pull-right">
+                                    <li><a href="#">快捷管理</a></li>
+                                    <li class="active">控制台</li>
+                                </ol>
+                            </div>
+                        </div>
+
+                        <div class="row">
+                            
+                            <div class="col-lg-12" id="panel-contact">
+                                <div class="panel panel-default">
+                                    <div class="panel-heading">
+                                        <h3 class="panel-title"><?php echo $data['manage/auth.config']['info'] ?></h3>
+                                    </div>
+                                    <div class="panel-body">
+                                        <address><?php echo $data['manage/auth.config']['content'] ?></address>
+                                    </div>
+                                </div>
+                            </div> 
+
+                            
+                            <div class="col-lg-12" id="panel-notice">
+                                <div class="panel panel-default">
+                                    <div class="panel-heading">
+                                        <h4 class="panel-title">公告</h4>
+                                    </div>
+                                    <div class="panel-body">
+                                        <ol style="list-style-type:circle">
+                                            <?php if(isset($data['manage/auth.notice']) && is_array($data['manage/auth.notice'])): ?><?php $t=count($data['manage/auth.notice'])-1 ?><?php $i=0 ?><?php foreach($data['manage/auth.notice'] as $k => $v): ?><li><a href="<?php  echo Dever::url("notice?where_id=".$v['id']."&where_config=".$v['config']) ?>" title="<?php  echo $v['name'] ?>"><?php  echo $v['name'] ?></a></li><?php $i=$i+1 ?><?php endforeach; ?><?php else: ?><?php echo $data['manage/auth.notice'] ?><?php endif; ?>
+                                            
+                                        </ol>
+                                    </div>
+                                </div>
+                            </div> 
+
+                            
+                            <div class="col-lg-12" id="panel-project">
+                                <div class="panel panel-default">
+                                    <div class="panel-heading"> 
+                                        <h3 class="panel-title">快捷功能</h3> 
+                                    </div> 
+                                    <div class="panel-body"> 
+                                        <div class="pull-left">
+                                            <p><?php if(isset($data['manage/menu.fast']) && is_array($data['manage/menu.fast'])): ?><?php $t=count($data['manage/menu.fast'])-1 ?><?php $i=0 ?><?php foreach($data['manage/menu.fast'] as $k => $v): ?><a href="<?php  echo $v['link'] ?>" class="btn btn-default" style="margin-left:10px;" title="<?php  echo $v['name'] ?>"><?php  echo $v['name'] ?></a><?php $i=$i+1 ?><?php endforeach; ?><?php else: ?><?php echo $data['manage/menu.fast'] ?><?php endif; ?></p>
+                                        </div>
+                                    </div> 
+                                </div>
+                            </div> 
+
+
+                            
+                            <div class="col-lg-4" style="display:none;">
+                                <div class="panel panel-default">
+                                    <div class="panel-heading"> 
+                                        <h3 class="panel-title">待办事项</h3> 
+                                    </div> 
+                                    <div class="panel-body todoapp"> 
+                                        <div class="row">
+                                            <div class="col-sm-6">
+                                                <h4 id="todo-message"><span id="todo-remaining"></span> of <span id="todo-total"></span> remaining</h4> 
+                                            </div>
+                                            <div class="col-sm-6">
+                                                <a href="" class="pull-right btn btn-primary btn-sm waves-effect waves-light" id="btn-archive">Archive</a>
+                                            </div>
+                                        </div>
+
+                                        <ul class="list-group no-margn nicescroll todo-list" style="max-height: 288px" id="todo-list"></ul>
+
+                                         <form name="todo-form" id="todo-form" role="form" class="m-t-20">
+                                            <div class="row">
+                                                <div class="col-sm-9 todo-inputbar">
+                                                    <input type="text" id="todo-input-text" name="todo-input-text" class="form-control" placeholder="Add new todo">
+                                                </div>
+                                                <div class="col-sm-3 todo-send">
+                                                    <button class="btn-primary btn-block btn waves-effect waves-light" type="button" id="todo-btn-submit">Add</button>
+                                                </div>
+                                            </div>
+                                        </form> 
+                                    </div> 
+                                </div>
+                            </div> 
+
+                        </div> 
+
+
+                    </div> 
+                               
+                <?php if(isset($_SERVER["HTTP_X_PJAX"])): ?><?php else: ?></div> 
+
+                <?php require Dever::config("base")->data . 'compile/cab/manage/moltran/inc/foot.cmp.php' ?>
+
+            </div>
+            
+            
+            
+
+            <?php require Dever::config("base")->data . 'compile/cab/manage/moltran/inc/chat.cmp.php' ?>
+
+    </div>
+    
+
+    <?php require Dever::config("base")->data . 'compile/cab/manage/moltran/inc/script.cmp.php' ?>
+
+</body>
+</html><?php endif; ?>

+ 19 - 0
data/compile/cab/manage/moltran/inc/chat.cmp.php

@@ -0,0 +1,19 @@
+
+            <div class="side-bar right-bar nicescroll">
+                <h4 class="text-center">Chat</h4>
+                <div class="contact-list nicescroll">
+                    <ul class="list-group contacts-list">
+                        <li class="list-group-item">
+                            <a href="#">
+                                <div class="avatar">
+                                    <img src="<?php echo Dever::config("host")->img ?>users/avatar-1.jpg" alt="">
+                                </div>
+                                <span class="name">Dever Admin</span>
+                                <i class="fa fa-circle online"></i>
+                            </a>
+                            <span class="clearfix"></span>
+                        </li>
+                    </ul>  
+                </div>
+            </div>
+            

+ 3 - 0
data/compile/cab/manage/moltran/inc/foot.cmp.php

@@ -0,0 +1,3 @@
+<?php $data['manage/database.res']=Dever::load('manage/database.res') ?>
+<footer class="footer text-right" style="<?php  echo Dever::load("manage/auth.loading") ? "display:none;" : "" ?>"><?php  echo Dever::config("base")->copyright ?></footer>
+<div id="load_script" style="display:none;"><?php echo $data['manage/database.res']['js'] ?></div>

+ 41 - 0
data/compile/cab/manage/moltran/inc/head.cmp.php

@@ -0,0 +1,41 @@
+<?php $data['manage/auth.config']=Dever::load('manage/auth.config') ?>
+<meta charset="utf-8">
+<title><?php echo $data['manage/auth.config']['title'] ?></title>
+<meta name="keywords" content="<?php echo $data['manage/auth.config']['title'] ?>">
+<meta name="description" content="<?php echo $data['manage/auth.config']['title'] ?>">
+<meta name="apple-mobile-web-app-title" content="<?php echo $data['manage/auth.config']['title'] ?>" />
+<meta name="author" content="rubin">
+<meta content="IE=edge,chrome=1" http-equiv="X-UA-Compatible">
+<meta name="viewport" content="width=device-width, initial-scale=1.0">
+<link rel="stylesheet" type="text/css" href="<?php echo Dever::config("host")->script ?>lib/layui/css/layui.css" />
+<link rel="stylesheet" type="text/css" href="<?php echo Dever::config("host")->script ?>lib/bootstrap/css/bootstrap.min.css" />
+<link rel="stylesheet" type="text/css" href="<?php echo Dever::config("host")->script ?>lib/valid/validationEngine.jquery.css">
+<link rel="stylesheet" type="text/css" href="<?php echo Dever::config("host")->script ?>lib/pnotify/pnotify.css">
+<link rel="stylesheet" type="text/css" href="<?php echo Dever::config("host")->script ?>lib/fancybox/jquery.fancybox.css">
+<link rel="stylesheet" type="text/css" href="<?php echo Dever::config("host")->script ?>lib/highlight/highlight.min.css">
+<link rel="stylesheet" type="text/css" href="<?php echo Dever::config("host")->script ?>lib/datetime/jquery.datetimepicker.css">
+
+
+<link rel="stylesheet" type="text/css" href="<?php echo Dever::config("host")->css ?>core.css" />
+<link rel="stylesheet" type="text/css" href="<?php echo Dever::config("host")->css ?>components.css" />
+<link rel="stylesheet" type="text/css" href="<?php echo Dever::config("host")->css ?>pages.css" />
+<link rel="stylesheet" type="text/css" href="<?php echo Dever::config("host")->css ?>menu.css" />
+<link rel="stylesheet" type="text/css" href="<?php echo Dever::config("host")->css ?>responsive.css" />
+<link rel="stylesheet" type="text/css" href="<?php echo Dever::config("host")->script ?>lib/pjax/nprogress.css" />
+
+<link rel="stylesheet" type="text/css" href="<?php echo Dever::config("host")->script ?>lib/table/rwd-table.min.css?v4">
+
+
+<link rel="stylesheet" type="text/css" href="<?php echo Dever::config("host")->script ?>lib/color/colpick.css">
+<link rel="stylesheet" type="text/css" href="<?php echo Dever::config("host")->script ?>lib/kindeditor/themes/default/default.css" />
+
+<link rel="stylesheet" type="text/css" href="<?php echo Dever::config("host")->script ?>lib/ui/ui.min.css">
+
+
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/jquery/jquery.min.js"></script>
+<script type="text/javascript" src="<?php echo Dever::config("host")->js ?>modernizr.min.js"></script>
+<script id="script"><?php  echo Dever::script() ?>config.template="<?php  echo $data["manage/auth.config"]["template"] ?>";config.lib="<?php  echo Dever::config("host")->public ?>"</script>
+<style type="text/css" id="style"><?php  echo Dever::load("manage/auth.loading") ? ".content,.content-page{margin-left: 0px;min-height:auto}" : "" ?></style>
+
+
+

+ 49 - 0
data/compile/cab/manage/moltran/inc/menu.cmp.php

@@ -0,0 +1,49 @@
+<?php $data['manage/auth.info']=Dever::load('manage/auth.info') ?>
+<?php $data['manage/menu.link']=Dever::load('manage/menu.link') ?>
+<?php $data['manage/menu.left']=Dever::load('manage/menu.left') ?>
+
+
+
+            <div class="left side-menu" id="menu">
+                <div class="sidebar-inner slimscrollleft">
+                    <div class="user-details">
+                        <div class="pull-left">
+                            <img src="<?php echo Dever::config("host")->img ?>users/avatar-1.jpg" alt="" class="thumb-md img-circle">
+                        </div>
+                        <div class="user-info">
+                            <div class="dropdown">
+                                <a href="#" id="manage-name" class="dropdown-toggle" data-toggle="dropdown" aria-expanded="false" style="<?php if(!(Dever::load('manage/auth.info#username'))): ?>display:none;<?php endif; ?>"><?php echo $data['manage/auth.info']['username'] ?></a>
+                                <ul class="dropdown-menu" style="display:none;">
+                                    <li><a href="javascript:void(0)"><i class="md md-face-unlock"></i> 个人资料<div class="ripple-wrapper"></div></a></li>
+                                    <li><a href="javascript:void(0)"><i class="md md-settings"></i> 设置</a></li>
+                                    <li><a href="javascript:void(0)"><i class="md md-lock"></i> 锁屏</a></li>
+                                    <li><a href="javascript:void(0)"><i class="md md-settings-power"></i> 退出</a></li>
+                                </ul>
+                            </div>
+                            
+                            <p class="text-muted m-0" id="manage-group" style="<?php if(!(Dever::load('manage/auth.info#rolename'))): ?>display:none;<?php endif; ?>"><?php echo $data['manage/auth.info']['rolename'] ?></p>
+                        </div>
+                    </div>
+                    
+                    <div id="sidebar-menu">
+                        <ul>
+                            <li>
+                                <a id="index-url" href="<?php echo $data['manage/menu.link']['index'] ?>" class="waves-effect waves-light active"><i class="glyphicon glyphicon-home"></i><span>控制台 </span></a>
+                            </li>
+
+                            <?php if(isset($data['manage/menu.left']) && is_array($data['manage/menu.left'])): ?><?php $t=count($data['manage/menu.left'])-1 ?><?php $i=0 ?><?php foreach($data['manage/menu.left'] as $k => $v): ?><li class="has_sub project-list">
+                                <a href="javascript:;" class="waves-effect waves-light<?php if(Dever::input("menu") != $v['key'] && $v['type'] != 1):?> collapsed<?php endif; ?> <?php if(Dever::input("menu") == $v['key']):?> active<?php endif; ?>" data-target=".<?php  echo $v['key'] ?>-menu"><i class="<?php  echo $v['icon'] ? $v['icon'] : "glyphicon glyphicon-folder-close" ?>"></i><span class="project-name"><?php  echo $v['name'] ?></span><span class="pull-right"><i class="md md-add"></i></span></a>
+                                <ul class="list-unstyled <?php  echo $v['key'] ?>-menu <?php if(Dever::input("menu") == $v['key'] || $v['type'] == 1):?> ins<?php endif; ?>" id="<?php  echo $v['key'] ?>-menu">
+                                    <?php if(isset($v['child']) && $v['child'] && is_array($v['child'])):foreach($v['child'] as $k1 => $v1):if($v1): ?><li class="<?php if(Dever::input("menu_id") == $v1['id']):?>active<?php endif; ?>"><a href="<?php  echo $v1['link'] ?>" class="<?php if(Dever::input("menu_id") == $v1['id']):?>subdrop<?php endif; ?>"><span class="glyphicon glyphicon-chevron-right"></span>&nbsp;&nbsp;<?php  echo $v1['name'] ?></a></li><?php endif;endforeach;endif; ?>
+                                    
+                                    
+                                    
+                                </ul>
+                            </li><?php $i=$i+1 ?><?php endforeach; ?><?php else: ?><?php echo $data['manage/menu.left'] ?><?php endif; ?>
+                        </ul>
+                        <div class="clearfix"></div>
+                    </div>
+                    <div class="clearfix"></div>
+                </div>
+            </div>
+             

+ 122 - 0
data/compile/cab/manage/moltran/inc/nav.cmp.php

@@ -0,0 +1,122 @@
+<?php $data['manage/database.res']=Dever::load('manage/database.res') ?>
+<?php $data['manage/auth.config']=Dever::load('manage/auth.config') ?>
+<?php $data['manage/auth.info']=Dever::load('manage/auth.info') ?>
+<?php $data['manage/menu.link']=Dever::load('manage/menu.link') ?>
+<?php $data['manage/top.get']=Dever::load('manage/top.get') ?>
+<div id="load_style" style="display:none;"><?php echo $data['manage/database.res']['css'] ?></div>
+
+            <div class="topbar" id="nav" style="<?php  echo Dever::load("manage/auth.loading") ? "display:none;" : "" ?>">
+                
+                <div class="topbar-left">
+                    <div class="text-center">
+                        <a href="javascript:;" class="logo"><span id="dever-name"><?php echo $data['manage/auth.config']['title'] ?></span></a>
+                    </div>
+                </div>
+                
+                <div class="navbar navbar-default" role="navigation">
+                    <div class="container">
+                        <div class="">
+                            <div class="pull-left">
+                                <button class="button-menu-mobile open-left">
+                                    <i class="glyphicon glyphicon-align-justify"></i>
+                                </button>
+                                <span class="clearfix"></span>
+                            </div>
+
+                            <ul class="nav navbar-nav navbar-right pull-right">
+                                <li class="dropdown hidden-xs" style="display:none;">
+                                    <a href="#" data-target="#" class="dropdown-toggle waves-effect" data-toggle="dropdown" aria-expanded="true">
+                                        <i class="md md-notifications"></i> <span class="badge badge-xs badge-danger">3</span>
+                                    </a>
+                                    <ul class="dropdown-menu dropdown-menu-lg">
+                                        <li class="text-center notifi-title">Notification</li>
+                                        <li class="list-group">
+                                           
+                                           <a href="javascript:void(0);" class="list-group-item">
+                                              <div class="media">
+                                                 <div class="pull-left">
+                                                    <em class="fa fa-user-plus fa-2x text-info"></em>
+                                                 </div>
+                                                 <div class="media-body clearfix">
+                                                    <div class="media-heading">New user registered</div>
+                                                    <p class="m-0">
+                                                       <small>You have 10 unread messages</small>
+                                                    </p>
+                                                 </div>
+                                              </div>
+                                           </a>
+                                           
+                                            <a href="javascript:void(0);" class="list-group-item">
+                                              <div class="media">
+                                                 <div class="pull-left">
+                                                    <em class="fa fa-diamond fa-2x text-primary"></em>
+                                                 </div>
+                                                 <div class="media-body clearfix">
+                                                    <div class="media-heading">New settings</div>
+                                                    <p class="m-0">
+                                                       <small>There are new settings available</small>
+                                                    </p>
+                                                 </div>
+                                              </div>
+                                            </a>
+                                            
+                                            <a href="javascript:void(0);" class="list-group-item">
+                                              <div class="media">
+                                                 <div class="pull-left">
+                                                    <em class="fa fa-bell-o fa-2x text-danger"></em>
+                                                 </div>
+                                                 <div class="media-body clearfix">
+                                                    <div class="media-heading">Updates</div>
+                                                    <p class="m-0">
+                                                       <small>There are
+                                                          <span class="text-primary">2</span> new updates available</small>
+                                                    </p>
+                                                 </div>
+                                              </div>
+                                            </a>
+                                           
+                                            <a href="javascript:void(0);" class="list-group-item">
+                                              <small>See all notifications</small>
+                                            </a>
+                                        </li>
+                                    </ul>
+                                </li>
+
+                                <li class="hidden-xs">
+                                    <?php if(isset($data['manage/top.get']) && is_array($data['manage/top.get'])): ?><?php $t=count($data['manage/top.get'])-1 ?><?php $i=0 ?><?php foreach($data['manage/top.get'] as $k => $v): ?><ul class="nav navbar-nav navbar-right auth-top" style="display:none">
+                                        <li class="dropdown hidden-xs">
+                                            <a href="javascript:;" class="dropdown-toggle" data-toggle="dropdown">
+                                                <span><?php  echo $v['name'] ?></span>
+                                                <i class="glyphicon glyphicon-list"></i>
+                                            </a>
+
+                                          <ul class="dropdown-menu">
+                                            <?php if(isset($v['child']) && $v['child'] && is_array($v['child'])):foreach($v['child'] as $k1 => $v1):if($v1): ?><li><a href="javascript:;" data-id="<?php  echo $v1['id'] ?>" onclick="topMenu($(this))"><a href="javascript:;" data-id="<?php  echo $v1['id'] ?>" onclick="topMenu($(this))"><?php  echo $v1['name'] ?></a></li><?php endif;endforeach;endif; ?>
+                                          </ul>
+                                        </li>
+                                    </ul><?php $i=$i+1 ?><?php endforeach; ?><?php else: ?><?php echo $data['manage/top.get'] ?><?php endif; ?>
+                                </li>
+
+                                
+                                <li class="hidden-xs" style="display:none;">
+                                    <a href="#" id="btn-fullscreen" class="waves-effect"><i class="md md-crop-free"></i></a>
+                                </li>
+                                <li class="hidden-xs" style="display:none;">
+                                    <a href="#" class="right-bar-toggle waves-effect"><i class="md md-chat"></i></a>
+                                </li>
+                                <li class="dropdown">
+                                    <a href="" class="dropdown-toggle profile" data-toggle="dropdown" aria-expanded="true"><img src="<?php echo Dever::config("host")->img ?>users/avatar-1.jpg" alt="user-img" class="img-circle"> </a>
+                                    <ul class="dropdown-menu">
+                                        <li><a href="javascript:void(0)"><i class="glyphicon glyphicon-user"  style="top: 3px;"></i> <span id="manage-name"><?php echo $data['manage/auth.info']['username'] ?></span></a></li>
+                                        <li><a href="#dever_modal" data-toggle="modal" data-name="ttt" id="edit_password" onclick="pass($(this));"><i class="glyphicon glyphicon-cog" style="top: 3px;"></i> 修改密码</a></li>
+                                        <li style="display:none;"><a href="javascript:void(0)"><i class="glyphicon glyphicon-lock" style="top: 3px;"></i> 锁屏</a></li>
+                                        <li><a id="logout-url" href="<?php echo $data['manage/menu.link']['logout'] ?>"><i class="glyphicon glyphicon-log-out"  style="top: 3px;"></i> 退出</a></li>
+                                    </ul>
+                                </li>
+                            </ul>
+                        </div>
+                        
+                    </div>
+                </div>
+            </div>
+            

+ 80 - 0
data/compile/cab/manage/moltran/inc/script.cmp.php

@@ -0,0 +1,80 @@
+
+
+<div class="modal fade" id="dever_modal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
+  <div class="modal-dialog">
+    <div class="modal-content">
+        <div class="modal-header">
+            <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
+            <h3 id="dever_modal_title">消息提醒</h3>
+        </div>
+        <div class="modal-body" id="dever_modal_body" style="overflow-x: hidden;overflow-y: auto;max-height: 400px;">
+            
+        </div>
+        <div class="modal-footer">
+            <button class="btn btn-default" id="dever_modal_no" data-dismiss="modal" aria-hidden="true">取消</button>
+            <button class="btn btn-danger" id="dever_modal_yes">确定</button>
+        </div>
+      </div>
+    </div>
+</div>
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/pic/webp.js"></script>
+
+
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/jquery/store.js"></script>
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/bootstrap/js/bootstrap.min.js"></script>
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/pjax/pjax.js"></script>
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/pjax/nprogress.js"></script>
+
+
+
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/color/colpick.js"></script>
+
+
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/datetime/jquery.datetimepicker.min.js"></script>
+
+
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/pnotify/pnotify.js"></script>
+
+
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/fancybox/jquery.fancybox.js"></script>
+
+
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/echarts/echarts.common.min.js?v1"></script>
+
+
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/highlight/highlight.min.js"></script>
+
+
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/manage/main.js?v6"></script>
+
+
+<script>
+    var resizefunc = [];
+
+    $(document).ready(function()
+    {
+        initMenu();
+    });
+</script>
+<script type="text/javascript" src="<?php echo Dever::config("host")->js ?>detect.js"></script>
+<script type="text/javascript" src="<?php echo Dever::config("host")->js ?>fastclick.js"></script>
+<script type="text/javascript" src="<?php echo Dever::config("host")->js ?>jquery.slimscroll.js"></script>
+
+<script type="text/javascript" src="<?php echo Dever::config("host")->js ?>waves.js"></script> 
+<script type="text/javascript" src="<?php echo Dever::config("host")->js ?>wow.min.js"></script> 
+<script type="text/javascript" src="<?php echo Dever::config("host")->js ?>jquery.app.js"></script> 
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/table/rwd-table.min.js?v3"></script>
+
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/ui/ui.min.js"></script>
+
+
+
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/valid/jquery.validationEngine.min.js?v3"></script>
+
+
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/kindeditor/kindeditor-all-min.js?v4"></script>
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/kindeditor/lang/zh-CN.js"></script>
+
+
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/layui/upload.js?v1"></script>
+<script type="text/javascript" src="<?php echo Dever::config("host")->script ?>lib/layui/layui.js"></script>

+ 91 - 0
data/compile/cab/manage/moltran/login.cmp.php

@@ -0,0 +1,91 @@
+<?php $data['manage/auth.set']=Dever::load('manage/auth.set') ?>
+<!DOCTYPE html>
+<!--power by dever--><html lang="zh-CN">
+<head>
+  
+  <?php require Dever::config("base")->data . 'compile/cab/manage/moltran/inc/head.cmp.php' ?>
+</head>
+    <body>
+
+
+        <div class="wrapper-page">
+            <div class="panel panel-color panel-primary panel-pages">
+                <div class="panel-heading bg-img"> 
+                    <div class="bg-overlay"></div>
+                    <h3 class="text-center m-t-10 text-white"> 登录到 <strong id="name"><?php  echo Dever::load("manage/auth.config#title") ?></strong> </h3>
+                </div> 
+
+
+                <div class="panel-body">
+                <form action="<?php  echo Dever::url("auth.login") ?>" method="post" target="f1" class="form-horizontal m-t-20" id="login">
+                <input type="hidden" name="function" id="function" value="msg">
+                <input type="hidden" name="refer" id="refer" value="<?php echo $data['manage/auth.set']['refer'] ?>">
+                <iframe id="f1" name="f1" style="display:none;"></iframe>
+                    
+                    <div class="form-group">
+                        <div class="col-xs-12">
+                            <input class="form-control input-lg" name="username" type="text" required="" placeholder="账号">
+                        </div>
+                    </div>
+
+                    <div class="form-group">
+                        <div class="col-xs-12">
+                            <input class="form-control input-lg" name="password" type="password" required="" placeholder="密码">
+                        </div>
+                    </div>
+
+                    <div class="form-group">
+                        <div class="col-xs-12">
+                            <div class="checkbox checkbox-primary">
+                                <input id="checkbox-signup" type="checkbox" checked>
+                                <label for="checkbox-signup">
+                                    记住密码
+                                </label>
+                            </div>
+                            
+                        </div>
+                    </div>
+                    
+                    <div class="form-group text-center m-t-40">
+                        <div class="col-xs-12">
+                            <button class="btn btn-primary btn-lg w-lg waves-effect waves-light" type="submit">登录</button>
+                        </div>
+                    </div>
+
+                    <div class="form-group m-t-30" style="display:none;">
+                        <div class="col-sm-7">
+                            <a href="recoverpw.html"><i class="fa fa-lock m-r-5"></i> 忘记密码?</a>
+                        </div>
+                        <div class="col-sm-5 text-right">
+                            <a href="register.html">注册</a>
+                        </div>
+                    </div>
+                </form> 
+                </div>                                 
+                
+            </div>
+
+            <div>
+                <p class="pull-right" style="<?php if(!(Dever::config("base")->copyright)): ?>display:none;<?php endif; ?>" id="footer"><?php  echo Dever::config("base")->copyright ?></p>
+            </div>
+        </div>
+
+        
+
+        
+        <?php require Dever::config("base")->data . 'compile/cab/manage/moltran/inc/script.cmp.php' ?>
+        <script>
+        $(function()
+        {
+          $("#login").bind("keydown",function(e){
+            var theEvent = e || window.event;    
+            var code = theEvent.keyCode || theEvent.which || theEvent.charCode;    
+            if (code == 13) {    
+                    $("#login").submit();
+                }
+           });
+        });
+
+        </script>
+    </body>
+</html>

+ 170 - 0
data/compile/cab/manage/moltran/project/database/list.cmp.php

@@ -0,0 +1,170 @@
+<?php $data['manage/database.page_list']=Dever::load('manage/database.page_list') ?>
+<?php $data['manage/database.cookie']=Dever::load('manage/database.cookie') ?>
+<?php $data['manage/top.get']=Dever::load('manage/top.get') ?>
+<?php $data['manage/database.info']=Dever::load('manage/database.info') ?>
+<?php $data['manage/database.listStyle']=Dever::load('manage/database.listStyle') ?>
+<?php $data['manage/database.list_search']=Dever::load('manage/database.list_search') ?>
+<?php $data['manage/database.list_thead']=Dever::load('manage/database.list_thead') ?>
+<?php $data['manage/database.list_tbody']=Dever::load('manage/database.list_tbody') ?>
+<?php $data['manage/database.page_list_table']=Dever::load('manage/database.page_list_table') ?>
+<?php $data['manage/database.list_button']=Dever::load('manage/database.list_button') ?>
+<?php $data['manage/database.list_mul']=Dever::load('manage/database.list_mul') ?>
+<?php $data['manage/database.banner']=Dever::load('manage/database.banner') ?>
+<!DOCTYPE html>
+<?php if(isset($_SERVER["HTTP_X_PJAX"])): ?><?php else: ?><!--power by dever--><html lang="zh-CN">
+<head>
+  
+  <?php require Dever::config("base")->data . 'compile/cab/manage/moltran/inc/head.cmp.php' ?>
+
+</head>
+  
+<body class="theme-<?php  echo Dever::load("/auth.config#template") ?>">
+
+<div id="wrapper" class="<?php echo $data['manage/database.cookie']['wrapper'] ?>">
+    <?php require Dever::config("base")->data . 'compile/cab/manage/moltran/inc/nav.cmp.php' ?>
+    
+    <?php require Dever::config("base")->data . 'compile/cab/manage/moltran/inc/menu.cmp.php' ?>
+
+    
+    
+    
+    <div class="content-page">
+        
+        <div class="content"><?php endif; ?>
+<style>
+.container_list .form-control
+{
+    width:80%;
+    display: inline;
+}
+.container_list .panel-heading .form-control,#mul .form-control,#page .form-control
+{
+    display:inline;
+    width:15%;
+    margin-top: 10px;
+}
+
+.container_list .table
+{
+    margin-bottom: 0px;
+}
+
+.container_list td
+{
+    vertical-align: middle;
+}
+
+.container_list th,.container_list td
+{
+    white-space: nowrap;
+    /*white-space: none;*/
+}
+.container_list .table-responsive[data-pattern="priority-columns"]
+{
+    position:inherit;
+    margin-top:20px;
+    overflow-x: auto;
+    overflow-y: hidden;
+}
+</style>
+<style id="addstyle"><?php echo $data['manage/database.listStyle'] ?></style>
+<div class="topbar" style="<?php if($data['manage/database.banner']): ?><?php else: ?>none<?php endif; ?>">
+    <div class="banner dever-layout" style="<?php if(!(Dever::load('manage/database.banner'))): ?>display:none;<?php endif; ?>"><?php echo $data['manage/database.banner'] ?></div>
+</div>
+            <div class="container container_list" id="content_1" style="<?php echo $data['manage/database.page_list']['s1'] ?>"><?php echo $data['manage/database.page_list']['content'] ?></div>
+            <div class="container container_list" id="content_2" style="<?php echo $data['manage/database.page_list']['s2'] ?>">
+                
+                <div class="row">
+                    <div class="col-sm-12">
+                        <?php if(isset($data['manage/top.get']) && is_array($data['manage/top.get'])): ?><?php $t=count($data['manage/top.get'])-1 ?><?php $i=0 ?><?php foreach($data['manage/top.get'] as $k => $v): ?><ul class="nav navbar-nav navbar-left data-auth-top">
+                            <li class="dropdown">
+                                <a href="javascript:;" class="dropdown-toggle" data-toggle="dropdown">
+                                    <span><?php  echo $v['name'] ?></span>
+                                </a>
+
+                              <ul class="dropdown-menu" style="overflow: auto;max-height: 350px;">
+                                <?php if(isset($v['child']) && $v['child'] && is_array($v['child'])):foreach($v['child'] as $k1 => $v1):if($v1): ?><li><a href="javascript:;" data-id="<?php  echo $v1['id'] ?>" onclick="topMenu($(this))"><a href="javascript:;" data-id="<?php  echo $v1['id'] ?>" onclick="topMenu($(this))"><?php  echo $v1['name'] ?></a></li><?php endif;endforeach;endif; ?>
+                              </ul>
+                            </li>
+                        </ul><?php $i=$i+1 ?><?php endforeach; ?><?php else: ?><?php echo $data['manage/top.get'] ?><?php endif; ?>
+                        <h4 class="pull-left page-title" id="list-name"><?php echo $data['manage/database.info']['list_header'] ?></h4>
+                        <ol class="breadcrumb pull-right">
+                            <li><a href="#dever_modal" data-toggle="modal" onclick="showMsg('数据结构', $(this), '#struct')" id="list-project"><?php echo $data['manage/database.info']['project_name'] ?></a></li>
+                            <li class="active" id="list-desc"><?php  echo Dever::load("manage/database.info#list_desc") ?>(共<?php  echo Dever::total("current") ?>条)</li>
+                        </ol>
+                    </div>
+                </div>
+
+                <form id="form1" name="form1" method="post" target="f1" action="<?php echo $data['manage/database.info']['list'] ?>">
+                <input type="hidden" name="function" id="function" value="msg"/>
+                <input type="hidden" name="url" id="url" value="<?php echo $data['manage/database.info']['mul'] ?>"/>
+                <input type="hidden" name="method" id="method" value="search"/>
+                <iframe id="f1" name="f1" style="display:none;"></iframe>
+
+                    <div class="row">
+                        <div class="col-lg-12">
+                            <div class="panel panel-border panel-primary">
+                                <div class="panel-heading"> 
+                                    <div class="btn-toolbar list-toolbar">
+
+ 
+                                        <a class="btn btn-primary" type="button" id="list-parent" style="<?php echo $data['manage/database.info']['parent_state'] ?>" href="<?php echo $data['manage/database.info']['parent'] ?>"><i class="fa fa-chevron-left"></i> 返回上一页</a>
+                                        
+                                        <a class="btn btn-primary" type="button" id="list-add" href="<?php echo $data['manage/database.info']['add'] ?>" style="<?php echo $data['manage/database.info']['add_state'] ?>"><i class="fa fa-plus"></i> 新增</a>
+                                       
+                                        
+                                        <span id="list-button"><?php echo $data['manage/database.list_button'] ?></span>
+                                        <div id="search"><?php echo $data['manage/database.list_search'] ?></div>
+                                    </div>
+                                </div> 
+                                <div id="table_1" style="<?php echo $data['manage/database.page_list_table']['s1'] ?>" class="panel-body table-rep-plugin"><?php echo $data['manage/database.page_list_table']['content'] ?></div>
+                                <div id="table_2" class="panel-body table-rep-plugin" style="<?php echo $data['manage/database.page_list_table']['s2'] ?>"> 
+
+                                    <div class="table-responsive" data-pattern="priority-columns">
+                                        <div>
+                                            <table id="tech-companies-1" class="table table-small-font table-bordered table-striped table-tool">
+                                                <thead id="list-thead">
+                                                    <tr><?php if(isset($data['manage/database.list_thead']) && is_array($data['manage/database.list_thead'])): ?><?php $t=count($data['manage/database.list_thead'])-1 ?><?php $i=0 ?><?php foreach($data['manage/database.list_thead'] as $k => $v): ?><?php echo $v ?><?php $i=$i+1 ?><?php endforeach; ?><?php else: ?><?php echo $data['manage/database.list_thead'] ?><?php endif; ?></tr>
+                                                </thead>
+                                                <tbody id="list-tbody"><?php if(isset($data['manage/database.list_tbody']) && is_array($data['manage/database.list_tbody'])): ?><?php $t=count($data['manage/database.list_tbody'])-1 ?><?php $i=0 ?><?php foreach($data['manage/database.list_tbody'] as $k => $v): ?><?php echo $v ?><?php $i=$i+1 ?><?php endforeach; ?><?php else: ?><?php echo $data['manage/database.list_tbody'] ?><?php endif; ?></tbody>
+                                            </table>
+                                        </div>
+                                    </div>  
+                                    <div id="mul"><?php echo $data['manage/database.list_mul'] ?></div>
+                                    <div id="page"><?php  echo Dever::page("current") ?></div>
+                                    <div class="dever_desc" id="desc" style="<?php if(!(Dever::load('manage/database.info#listDesc'))): ?>display:none;<?php endif; ?>"><?php echo $data['manage/database.info']['listDesc'] ?></div>
+                                </div> 
+                            </div>
+
+                        </div>
+                    </div> 
+                    
+                </form>
+                <form id="form2" name="form2" method="get" style="display: none;">
+                </form>
+                <div id="struct" style="display:none;"><?php echo $data['manage/database.info']['struct'] ?></div>
+                <script>
+                    $(document).ready(function()
+                    {
+                      init();
+                    });
+                </script>
+            </div>
+        <?php if(isset($_SERVER["HTTP_X_PJAX"])): ?><?php else: ?></div>
+        
+
+        <?php require Dever::config("base")->data . 'compile/cab/manage/moltran/inc/foot.cmp.php' ?>
+        
+        </div>
+        
+        
+        
+
+        <?php require Dever::config("base")->data . 'compile/cab/manage/moltran/inc/chat.cmp.php' ?>
+        
+    </div>
+
+    <?php require Dever::config("base")->data . 'compile/cab/manage/moltran/inc/script.cmp.php' ?>
+
+</body>
+</html><?php endif; ?>

+ 137 - 0
data/compile/cab/manage/moltran/project/database/update.cmp.php

@@ -0,0 +1,137 @@
+<?php $data['manage/database.page_update']=Dever::load('manage/database.page_update') ?>
+<?php $data['manage/database.cookie']=Dever::load('manage/database.cookie') ?>
+<?php $data['manage/top.get']=Dever::load('manage/top.get') ?>
+<?php $data['manage/database.info']=Dever::load('manage/database.info') ?>
+<?php $data['manage/database.update']=Dever::load('manage/database.update') ?>
+<?php $data['/database.info']=Dever::load('/database.info') ?>
+<?php $data['manage/database.valid']=Dever::load('manage/database.valid') ?>
+<?php $data['manage/database.save']=Dever::load('manage/database.save') ?>
+<?php $data['manage/database.update_button']=Dever::load('manage/database.update_button') ?>
+<?php $data['manage/database.banner']=Dever::load('manage/database.banner') ?>
+<!DOCTYPE html>
+<?php if(isset($_SERVER["HTTP_X_PJAX"])): ?><?php else: ?><!--power by dever--><html lang="zh-CN">
+<head>
+  
+  <?php require Dever::config("base")->data . 'compile/cab/manage/moltran/inc/head.cmp.php' ?>
+
+</head>
+  
+<body class="theme-<?php  echo Dever::load("/auth.config#template") ?>">
+
+  
+  <div id="wrapper" class="<?php echo $data['manage/database.cookie']['wrapper'] ?>">    
+
+    <?php require Dever::config("base")->data . 'compile/cab/manage/moltran/inc/nav.cmp.php' ?>
+    
+    <?php require Dever::config("base")->data . 'compile/cab/manage/moltran/inc/menu.cmp.php' ?>
+
+    
+    
+                          
+    <div class="content-page">
+        
+        <div class="content"><?php endif; ?>
+            <style>
+            .container_update #update_button button
+            {
+              margin-right: 5px;
+            }
+            .container_update #update_button
+            {
+              margin-top:20px;
+            }
+            .container_update .form-control
+            {
+              width: 50%;
+            }
+            .simditor img
+            {
+              width:100%;
+            }
+            </style>
+            <div class="topbar" style="<?php if($data['manage/database.banner']): ?><?php else: ?>none<?php endif; ?>">
+                <div class="banner dever-layout" style="<?php if(!(Dever::load('manage/database.banner'))): ?>display:none;<?php endif; ?>"><?php echo $data['manage/database.banner'] ?></div>
+            </div>
+            <div class="container container_update" id="content_1" style="<?php echo $data['manage/database.page_update']['s1'] ?>"><?php echo $data['manage/database.page_update']['content'] ?></div>
+            <div class="container container_update" id="content_2" style="<?php echo $data['manage/database.page_update']['s2'] ?>">
+                
+                <div class="row">
+                    <div class="col-sm-12">
+                        <?php if(isset($data['manage/top.get']) && is_array($data['manage/top.get'])): ?><?php $t=count($data['manage/top.get'])-1 ?><?php $i=0 ?><?php foreach($data['manage/top.get'] as $k => $v): ?><ul class="nav navbar-nav navbar-left data-auth-top">
+                            <li class="dropdown">
+                                <a href="javascript:;" class="dropdown-toggle" data-toggle="dropdown">
+                                    <span><?php  echo $v['name'] ?></span>
+                                </a>
+
+                              <ul class="dropdown-menu">
+                                <?php if(isset($v['child']) && $v['child'] && is_array($v['child'])):foreach($v['child'] as $k1 => $v1):if($v1): ?><li><a href="javascript:;" data-id="<?php  echo $v1['id'] ?>" onclick="topMenu($(this))"><a href="javascript:;" data-id="<?php  echo $v1['id'] ?>" onclick="topMenu($(this))"><?php  echo $v1['name'] ?></a></li><?php endif;endforeach;endif; ?>
+                              </ul>
+                            </li>
+                        </ul><?php $i=$i+1 ?><?php endforeach; ?><?php else: ?><?php echo $data['manage/top.get'] ?><?php endif; ?>
+                        <h4 class="pull-left page-title" id="list-name"><?php echo $data['manage/database.info']['update_header'] ?></h4>
+                        <ol class="breadcrumb pull-right">
+                            <li><a href="#dever_modal" data-toggle="modal" onclick="showMsg('数据结构', $(this), '#struct')" id="list-project"><?php echo $data['manage/database.info']['project_name'] ?></a></li>
+                            <li class="active" id="list-desc"><?php echo $data['manage/database.info']['update_desc'] ?></li>
+                        </ol>
+                    </div>
+                </div>
+
+                <form method="post" target="f1" class="form1" role="form" autocomplete="off" action="<?php echo $data['manage/database.info']['action'] ?>">
+                <input type="hidden" name="function" id="function" value="msg"/>
+                <input type="hidden" name="url" id="url" value="<?php echo $data['manage/database.info']['list'] ?>" />
+                <input type="hidden" name="project" id="project" value="<?php echo $data['manage/database.info']['project'] ?>" />
+                <input type="hidden" name="table" id="table" value="<?php echo $data['manage/database.info']['table'] ?>" />
+                <iframe id="f1" name="f1" style="display:none;"></iframe>
+                  <div class="row">
+                    <div class="col-sm-12">
+                        <div class="panel panel-border panel-primary">
+                            <div class="panel-heading">
+                              <h3 class="panel-title dever_desc" id="desc" style="<?php if(!(Dever::load('manage/database.info#updateDesc'))): ?>display:none;<?php endif; ?>"><?php echo $data['manage/database.info']['updateDesc'] ?></h3>
+                              <ul class="nav nav-tabs">
+                                <li class="active" style="display:none;"><a href="#data-1" data-toggle="tab">更新数据</a></li>
+                                <li><a href="javascript:;" class="dever_update_add" style="<?php if(!(Dever::load('manage/database.info#updateMul'))): ?>display:none;<?php endif; ?>"><?php echo $data['manage/database.info']['updateMul'] ?></a></li>
+                                <li><a href="javascript:;" class="dever_save" style="display:none;">您有保存到草稿箱的数据</a></li>
+                              </ul>
+                            </div>
+                            <div class="panel-body" id="myTabContent">    
+                              <div class="tab-pane active in" id="data-1">     
+                                <input type="hidden" name="update_where_id" id="update_where_id" value="<?php echo $data['manage/database.info']['id'] ?>"/>
+                                <input type="hidden" name="copy_num" id="copy_num" value="0"/>                      
+                                <div id="content"><?php if(isset($data['manage/database.update']) && is_array($data['manage/database.update'])): ?><?php $t=count($data['manage/database.update'])-1 ?><?php $i=0 ?><?php foreach($data['manage/database.update'] as $k => $v): ?><?php echo $v ?><?php $i=$i+1 ?><?php endforeach; ?><?php else: ?><?php echo $data['manage/database.update'] ?><?php endif; ?></div>
+                              </div>
+                              <div class="list-toolbar" id="update_button" submit="<?php  echo Dever::submit() ?>"><?php echo $data['manage/database.update_button'] ?></div>
+                            </div> 
+
+                            
+                        </div> 
+                    </div> 
+                  </div> 
+                </form>
+                
+                
+                <div id="valid"><?php echo $data['manage/database.valid'] ?></div>
+                <div id="struct" style="display:none;" save="<?php echo $data['manage/database.save'] ?>"><?php echo $data['/database.info']['struct'] ?></div>
+
+                <script>
+                    $(document).ready(function()
+                    {
+                      init();
+                    });
+                </script>
+
+            </div>      
+          <?php if(isset($_SERVER["HTTP_X_PJAX"])): ?><?php else: ?></div> 
+
+        
+
+        <?php require Dever::config("base")->data . 'compile/cab/manage/moltran/inc/foot.cmp.php' ?>
+
+    </div>
+    
+    
+    
+
+    <?php require Dever::config("base")->data . 'compile/cab/manage/moltran/inc/script.cmp.php' ?>
+
+</body>
+</html><?php endif; ?>

+ 20 - 0
data/compile/cab/manage/node/default/project/database/list.php

@@ -0,0 +1,20 @@
+<?php return array (
+  'banner' => 
+  array (
+    'name' => 'banner设定',
+    'type' => 'render',
+    'param' => 
+    array (
+      0 => 'manage/database.banner',
+      1 => 
+      array (
+        '.topbar@style' => 
+        array (
+          0 => '',
+          1 => 'none',
+        ),
+        '.banner' => 'none',
+      ),
+    ),
+  ),
+);

+ 1 - 0
data/readme

@@ -0,0 +1 @@
+test

+ 67 - 0
main/assets/html/home.html

@@ -0,0 +1,67 @@
+<!DOCTYPE html>
+<html>
+<head>
+  <meta charset="utf-8">
+  <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
+  <title>售货柜通讯测试</title>
+  <link rel="stylesheet" type="text/css" href="../script/lib/layui/css/layui.css" />
+  <script src="../script/lib/layui/layui.js"></script>
+  <script id="script"></script>
+  <script src="../js/sub.js"></script>
+</head>
+<body>
+ 
+<div class="layui-container">
+    <blockquote class="layui-elem-quote"><a id="pdf" href="http://192.168.33.10/cab/main/assets/pdf/msg.pdf" target="_blank">点此查看协议文档</a></blockquote>
+    <fieldset class="layui-elem-field layui-field-title" style="margin-top: 20px;">
+        <legend>售货柜通讯测试</legend>
+    </fieldset>
+
+
+    <div class="layui-row">
+        <form class="layui-form" action="" lay-filter="form1">
+        <div class="layui-form-item">
+          <label class="layui-form-label">通讯指令</label>
+          <div class="layui-input-block">
+            <input type="text" name="code" id="code" value="52" required="" lay-verify="required" placeholder="请输入通讯指令" autocomplete="off" class="layui-input">
+          </div>
+        </div>
+
+        <div class="layui-form-item">
+          <label class="layui-form-label">发送方ID</label>
+          <div class="layui-input-block">
+            <input type="text" name="from" id="from" value="XXG001" required="" lay-verify="required" placeholder="请输入发送方ID" autocomplete="off" class="layui-input">
+          </div>
+        </div>
+
+        <div class="layui-form-item">
+          <label class="layui-form-label">接收送方ID</label>
+          <div class="layui-input-block">
+            <input type="text" name="to" id="to" value="869300032841441" required="" lay-verify="required" placeholder="请输入接收送方ID" autocomplete="off" class="layui-input">
+          </div>
+        </div>
+
+        <div class="layui-form-item">
+          <label class="layui-form-label">消息ID号</label>
+          <div class="layui-input-block">
+            <input type="text" name="mid" id="mid" value="2" required="" lay-verify="required" placeholder="请输入消息ID号" autocomplete="off" class="layui-input">
+          </div>
+        </div>
+
+        <div class="layui-form-item">
+          <label class="layui-form-label">消息内容</label>
+          <div class="layui-input-block">
+            <textarea type="text" name="msg" id="msg" value='' required="" lay-verify="required" placeholder="请输入消息内容" class="layui-textarea" autocomplete="off"  rows="3" cols="100">0&12312234234sfsfsf</textarea> 
+          </div>
+        </div>
+        <div class="layui-form-item">
+          <div class="layui-input-block">
+            <button class="layui-btn" lay-submit lay-filter="*">立即提交</button>
+          </div>
+        </div>
+      </form>
+    </div>
+</div> 
+
+</body>
+</html>

+ 23 - 0
main/assets/js/sub.js

@@ -0,0 +1,23 @@
+layui.use(['layer', 'form'], function(){
+    var $ = layui.$;
+    var form = layui.form;
+
+    form.on('submit(*)', function(data) {
+      var index = layer.load(1, {
+        shade: [0.1,'#fff'] //0.1透明度的白色背景
+      });
+
+      var url = config.host + 'home.pub';
+      $.ajax({
+         url: url, 
+         type: 'get',
+         dataType: 'jsonp',
+         data: data.field,
+         success: function (response) {
+            layer.close(index);
+            layer.alert('发送成功:' + response.data);
+         }
+      });
+      return false;
+    });
+});

BIN
main/assets/pdf/msg.pdf


+ 7 - 0
main/daemon/sub.php

@@ -0,0 +1,7 @@
+<?php
+
+define('DEVER_DAEMON', true);
+
+include(dirname(__FILE__) . DIRECTORY_SEPARATOR . '../index.php');
+
+Dever::load('main/home.sub');

+ 93 - 0
main/database/data.php

@@ -0,0 +1,93 @@
+<?php
+
+$server = function()
+{
+	return Dever::db('mqtt/server')->state();
+};
+return array
+(
+	# 表名
+	'name' => 'data',
+	# 显示给用户看的名称
+	'lang' => '消息列表',
+	# 后台菜单排序
+	'order' => 1,
+	# 数据结构
+	'struct' => array
+	(
+		'id' 		=> array
+		(
+			'type' 		=> 'int-11',
+			'name' 		=> 'ID',
+			'default' 	=> '',
+			'desc' 		=> '',
+			'match' 	=> 'is_numeric',
+			'search'	=> 'order',
+			//'list'		=> true,
+			'order'		=> 'desc',
+		),
+		
+		'server_id'		=> array
+		(
+			'type' 		=> 'int-11',
+			'name' 		=> '服务器',
+			'default' 	=> '',
+			'desc' 		=> '服务器',
+			'match' 	=> 'is_numeric',
+			'update'	=> 'radio',
+			'option'	=> $server,
+			'list'		=> true,
+		),
+
+		'topic'		=> array
+		(
+			'type' 		=> 'varchar-100',
+			'name' 		=> 'key',
+			'default' 	=> '',
+			'desc' 		=> 'key',
+			'match' 	=> 'is_string',
+			'update'	=> 'text',
+			'search'	=> 'fulltext',
+			'list'		=> true,
+		),
+
+		'msg'		=> array
+		(
+			'type' 		=> 'varchar-100',
+			'name' 		=> 'msg',
+			'default' 	=> '',
+			'desc' 		=> 'msg',
+			'match' 	=> 'is_string',
+			'update'	=> 'text',
+			'search'	=> 'fulltext',
+			'list'		=> true,
+		),
+
+		'state'		=> array
+		(
+			'type' 		=> 'tinyint-1',
+			'name' 		=> '状态',
+			'default' 	=> '1',
+			'desc' 		=> '请选择状态',
+			'match' 	=> 'is_numeric',
+		),
+		
+		'cdate'		=> array
+		(
+			'type' 		=> 'int-11',
+			'name' 		=> '录入时间',
+			'match' 	=> array('is_numeric', time()),
+			'desc' 		=> '',
+			# 只有insert时才生效
+			'insert'	=> true,
+			'list'		=> 'date("Y-m-d H:i:s", {cdate})',
+		),
+	),
+
+	'request' => array
+	(
+		'delete' => false,
+		'edit' => false,
+		'insert' => false,
+	),
+);

+ 8 - 0
main/index.php

@@ -0,0 +1,8 @@
+<?php
+
+define('DEVER_APP_NAME', 'main');
+define('DEVER_APP_LANG', '基础设置');
+define('DEVER_APP_PATH', dirname(__FILE__) . DIRECTORY_SEPARATOR);
+define('DEVER_MANAGE_ORDER', 98);
+define('DEVER_MANAGE_ICON', 'glyphicon glyphicon-tower');
+include(DEVER_APP_PATH . '../boot.php');

+ 51 - 0
main/src/Home.php

@@ -0,0 +1,51 @@
+<?php
+namespace Main\Src;
+
+use Dever;
+use Mqtt\Src\Api as Mqtt;
+
+class Home
+{
+	private $key = 'XXG/869300032841441';
+	public function index()
+	{
+		$data = array();
+		return Dever::render('home', $data);
+	}
+
+	public function pub()
+	{
+		$code = Dever::input('code');
+		$from = Dever::input('from');
+		$to = Dever::input('to');
+		$mid = Dever::input('mid');
+		$msg = Dever::input('msg');
+
+		$value = array
+		(
+			'c' => $code,
+			'f' => $from,
+			't' => $to,
+			'm' => $msg,
+			'mi' => $mid
+		);
+		$value = Dever::json_encode($value);
+
+		//Dever::daemon('api.pub?key=' . $key. '&value=' . $value, 'mqtt');
+		$mqtt = new Mqtt();
+		$mqtt->pub($this->key, $value);
+		return $this->key . ':' . $value;
+	}
+
+	public function sub()
+	{
+		$mqtt = new Mqtt();
+		$mqtt->sub($this->key, array($this, 'callback'));
+		return true;
+	}
+
+	public function callback($topic, $msg)
+	{
+		Dever::log($topic . ':' . $msg);
+	}
+}

+ 16 - 0
main/template/home.php

@@ -0,0 +1,16 @@
+<?php
+/*
+|--------------------------------------------------------------------------
+| home
+|--------------------------------------------------------------------------
+*/
+
+$view
+
+# 初始化几个js变量
+->fetch('#script',	'<{Dever::script()}>')
+
+->fetch('#pdf@href',	'<{echo DEVER_APP_HOST . "assets/pdf/msg.pdf"}>')
+
+# display
+->display();

+ 7 - 0
manage/daemon/loop.php

@@ -0,0 +1,7 @@
+<?php
+
+define('DEVER_DAEMON', true);
+
+include(dirname(__FILE__) . DIRECTORY_SEPARATOR . '../index.php');
+
+Dever::load('manage/project.loop');

+ 7 - 0
manage/daemon/main.php

@@ -0,0 +1,7 @@
+<?php
+
+define('DEVER_DAEMON', true);
+
+include(dirname(__FILE__) . DIRECTORY_SEPARATOR . '../index.php');
+
+Dever::load('manage/project.cron');

+ 4 - 0
manage/index.php

@@ -0,0 +1,4 @@
+<?php 
+define('DEVER_PACKAGE', 'manage');
+define('DEVER_APP_SETUP', dirname(__FILE__) . DIRECTORY_SEPARATOR);
+include(dirname(__FILE__) . DIRECTORY_SEPARATOR . '../boot.php');

+ 4 - 0
mqtt/index.php

@@ -0,0 +1,4 @@
+<?php 
+define('DEVER_PACKAGE', 'mqtt');
+define('DEVER_APP_SETUP', dirname(__FILE__) . DIRECTORY_SEPARATOR);
+include(dirname(__FILE__) . DIRECTORY_SEPARATOR . '../boot.php');

+ 3 - 0
package.json

@@ -0,0 +1,3 @@
+{
+	"rely": "manage,mqtt"
+}

+ 4 - 0
upload/index.php

@@ -0,0 +1,4 @@
+<?php 
+define('DEVER_PACKAGE', 'upload');
+define('DEVER_APP_SETUP', dirname(__FILE__) . DIRECTORY_SEPARATOR);
+include(dirname(__FILE__) . DIRECTORY_SEPARATOR . '../boot.php');