rabin %!s(int64=2) %!d(string=hai) anos
pai
achega
db0fd3c4c8
Modificáronse 4 ficheiros con 40 adicións e 6 borrados
  1. 1 1
      assets/layadmin/html/inc/script.html
  2. 14 0
      src/Auth.php
  3. 21 4
      src/Database.php
  4. 4 1
      src/Lib/Input.php

+ 1 - 1
assets/layadmin/html/inc/script.html

@@ -41,4 +41,4 @@
 <script type="text/javascript" src="../script/lib/layui/xm-select/xm-select.js"></script>
 
 <!-- 加载主要js,很乱,后续优化 -->
-<script type="text/javascript" src="../script/lib/manage/main.js?715"></script>
+<script type="text/javascript" src="../script/lib/manage/main.js?716"></script>

+ 14 - 0
src/Auth.php

@@ -948,4 +948,18 @@ class Auth
         $api = new Api;
         $api->push($param);
     }
+
+    # 测试
+    public function test_call()
+    {
+        $data = Dever::db('manage/admin')->select(array(), function($data) {
+            $data['username'] .= 'test';
+            return $data;
+        });
+        print_r($data);die;
+
+        # 重新命名项目,方便复用
+        //Dever::setAlias('area', 'sarea');
+        //return Dever::load('area/api')->string('110000,110100');
+    }
 }

+ 21 - 4
src/Database.php

@@ -3699,6 +3699,7 @@ class Database
 
     private function update_key(&$key, &$value)
     {
+        $value['key'] = $key;
         if (strstr($key, '/')) {
             if (strstr($key, '-')) {
                 $temp = explode('-', $key);
@@ -3916,12 +3917,13 @@ class Database
                         $table_body .= '</tr>';
                     }
                     
+                    $total = array();
                     if (isset($param['value']) && $param['value']) {
                         if (!is_array($param['value'])) {
                             $param['value'] = Dever::json_decode($param['value']);
                         }
                         foreach ($param['value'] as $bk => $bv) {
-                            $table_body .= '<tr>';
+                            $table_body .= '<tr id="'.$param['name'] . '_c_'.$bk.'">';
                             foreach ($param['update'] as $hk => $hv) {
                                 if (isset($hv['col'])) {
                                     $hk = $hv['col'];
@@ -3937,7 +3939,15 @@ class Database
                                     if ($hv['update'] == 'linkage') {
                                         $hv['update_width'] = '30%';
                                     }
-                                    $this->update_html($hv, $hk, $hk, $bv, $s);
+                                    $hv = $this->update_html($hv, $hk, $hk, $bv, $s);
+                                    if (isset($param['update_show']) && $param['update_show'] && is_array($param['update_show'])) {
+                                        if (isset($param['update_show'][$hv['key']])) {
+                                            if (!isset($total[$hv['key']])) {
+                                                $total[$hv['key']] = array($hv['desc'], $param['update_show'][$hv['key']], 0);
+                                            }
+                                            $total[$hv['key']][2] += $hv['value'];
+                                        }
+                                    }
                                     if ($hv['update'] == 'hidden') {
                                         $table_body .= '<td style="display:none;">'.$s.'</td>';
                                     } else {
@@ -3957,8 +3967,14 @@ class Database
                     $table .= '</table>';
                     $result .= $table;
 
-                    if (isset($param['update_show']) && $param['update_show']) {
-                        //$result .= '<section class="order-sumary border-b">合计数量:111</section>';
+                    if ($total) {
+                        $result .= '<section class="border-b" style="padding: 10px;display: inline-block;"><script>function test(e, data, type){console.info(e.val())}</script>';
+
+                        foreach ($total as $k => $v) {
+                            $result .= '<span>'.$v[0].':<span id="'.$v[1].'">'.$v[2].'</span></span>&nbsp;&nbsp;&nbsp;&nbsp;';
+                        }
+
+                        $result .= '</section>';
                     }
                 } elseif (isset($param['update_type']) && $param['update_type'] == 3) {
                     $table = '<style>.layui-table .layui-input, .layui-table .xm-select-parent{width:100%}</style>';
@@ -4187,6 +4203,7 @@ class Database
                 $result .= Html::desc($param['desc']);
             }
         }
+        return $param;
     }
 
     /**

+ 4 - 1
src/Lib/Input.php

@@ -262,7 +262,7 @@ class Input
             $param['place'] = $param['upload_place'];
         }
         if (!isset($param['upload_search'])) {
-            $param['upload_search_value'] = $param['project'] . '-' . $param['table'] . '.' . $param['col'];
+            $param['upload_search_value'] = $param['project'] . '-' . $param['table'] . '.' . $param['index'];
             $param['upload_search'] = $param['upload_search_value'];
             
         } else {
@@ -1680,6 +1680,9 @@ class Input
         if (isset($param['update_type']) && $param['update_type'] == 'date') {
             $value = date('Y-m-d H:i', $value);
         }
+        if (strstr($param['name'], '#')) {
+            $param['name'] = str_replace('#', '_', $param['name']);
+        }
         return '<div id="' . $param['name'] . '">' . $value . '</div>';
     }
 }