dever 4 years ago
parent
commit
49250b712e

+ 2 - 2
app/content/database/creater.php

@@ -203,8 +203,8 @@ return array
                 'state' => 1,
             ),
             'type' => 'all',
-            'order' => array('reorder' => 'desc','id' => 'desc'),
-            'col' => '*',
+            'order' => array('shou' => 'asc', 'reorder' => 'desc', 'id' => 'desc'),
+            'col' => '*|shou|',
         ),
     ),
 );

+ 1 - 1
app/content/database/news.php

@@ -233,7 +233,7 @@ return array
         (
             'type'      => 'int-11',
             'name'      => '发布时间-选择未来时间将不会显示',
-            'match'     => array('is_numeric', time()),
+            'match'     => 'option',
             'default'   => '',
             'desc'      => '',
             'update'    => 'date',

+ 33 - 6
app/content/database/xuniren.php

@@ -115,15 +115,16 @@ return array
             'list'      => true,
         ),
 
-        'birth'      => array
+        'bdate'      => array
         (
             'type'      => 'int-11',
             'name'      => '出生日期-将根据出生日期计算年龄,为空则展示不详',
             'default'   => '',
             'desc'      => '出生日期',
             'match'     => 'is_numeric',
-            'update'    => 'date',
-            'list'      => 'date("Y-m-d H:i:s", {birth})',
+            'callback'  => 'maketime',
+            'update'    => 'time',
+            'list'      => 'date("Y-m-d", {bdate})',
         ),
 
         'city'      => array
@@ -213,10 +214,10 @@ return array
         (
             'type'      => 'int-11',
             'name'      => '初登场时间',
-            'match'     => array('is_numeric', time()),
+            'match'     => 'is_numeric',
             'default'   => '',
             'desc'      => '',
-            'update'    => 'date',
+            'update'    => 'time',
             'callback'  => 'maketime',
             //'list'        => 'date("Y-m-d H:i:s", {pdate})',
         ),
@@ -335,6 +336,17 @@ return array
 
     ),
 
+    # 更新表结构
+    'alter' => array
+    (
+        2 => array
+        (
+            array('update', 'birth', 'bdate', 'int-11  出生日期'),
+            //array('add', 'config', 'config', 'int-11 1 配置'),
+        ),
+        'version' => 2,
+    ),
+
     # request 请求接口定义
     'request' => array
     (
@@ -382,7 +394,22 @@ return array
             ),
             'type' => 'all',
             'order' => array('shou' => 'asc', 'reorder' => 'desc', 'id' => 'desc'),
-            'col' => '*|shou',
+            'col' => '*|shou|',
+        ),
+
+        'getDataByCreater' => array
+        (
+            # 匹配的正则或函数 选填项
+            'option' => array
+            (
+                'creater_id' => 'yes',
+                'status' => 1,
+                'state' => 1,
+            ),
+            'type' => 'all',
+            'order' => array('reorder' => 'desc', 'id' => 'desc'),
+            'page' => array(100, 'list'),
+            'col' => '*',
         ),
     ),
 );

+ 69 - 0
app/content/lib/Xuniren.php

@@ -22,4 +22,73 @@ class Xuniren
 
         return $data;
     }
+
+    public function getDataByCreater($creater_id)
+    {
+        $where = array();
+
+        $where['creater_id'] = $creater_id;
+        $data = Dever::db('content/xuniren')->getDataByCreater($where);
+
+        if ($data) {
+            foreach ($data as $k => $v) {
+                $data[$k]['sname'] = $v['name'] . ' / ' . $v['ename'];
+                $data[$k]['link'] = Dever::url('main/xnr-detail?id=' . $v['id']);
+                $data[$k]['info'] = '<span>简介</span> ' . $v['info'];
+            }
+        }
+
+        return $data;
+    }
+
+    public function getInfo($id)
+    {
+        $data = Dever::db('content/xuniren')->one(array('id' => $id));
+
+        if ($data) {
+            $data['news'] = Dever::array_decode($data['news']);
+            if ($data['bdate']) {
+                $data['age'] = $this->birthday($data['bdate']);
+                if ($data['age'] <= 0) {
+                    $data['age'] = '不详';
+                }
+            } else {
+                $data['age'] = '不详';
+            }
+
+            if ($data['sex'] == 1) {
+                $data['sex'] = '男';
+            } elseif ($data['sex'] == 2) {
+                $data['sex'] = '女';
+            } else {
+                $data['sex'] = '不详';
+            }
+            $data['sname'] = $data['name'] . ' / ' . $data['ename'];
+
+            $data['pdate'] = date('Y/m/d', $data['pdate']);
+
+            $data['creater'] = Dever::db('content/creater')->one($data['creater_id']);
+            $data['creater_name'] = $data['creater']['name'];
+        }
+
+        return $data;
+    }
+
+    public function birthday($age)
+    {
+        $temp = explode("-",date("Y-m-d",$age));
+        $y1 = $temp[0];
+        $m1 = $temp[1];
+        $d1 = $temp[2];
+
+        $temp = explode("-",date("Y-m-d"));
+        $y2 = $temp[0];
+        $m2 = $temp[1];
+        $d2 = $temp[2];
+
+        $age = $y2 - $y1; 
+        if((int)($m2.$d2) < (int)($m1.$d1)) 
+        $age -= 1;
+        return $age; 
+    } 
 }