rabin %!s(int64=3) %!d(string=hai) anos
pai
achega
ad4ccb2c61

+ 17 - 26
service/agent/database/member.php

@@ -26,12 +26,6 @@ $type = array
     2 => '公司',
 );
 
-$import = array
-(
-    1 => '非导入',
-    2 => '导入数据',
-);
-
 $source_id = function()
 {
     $array = array
@@ -89,6 +83,21 @@ if ($search_api_parent_mid && $getInfo != 1) {
         '返回上一页' => array('location', 'l=project/database/list&project=agent&table=member_area&page_type=1&mid=' . $parent_mid),
     );
 }
+
+$list_button = array();
+if ($pmid) {
+    $list_button = array
+    (
+        'list' => array('查看详情', '"member_area&mid={id}&page_type=1&search_type=1"'),
+    );
+} else {
+    $list_button = array
+    (
+        'list' => array('查看详情', '"member_area&mid={id}&page_type=1"'),
+    );
+}
+
+# id小于50000为导入的数据
 return array
 (
     # 表名
@@ -96,7 +105,7 @@ return array
     # 显示给用户看的名称
     'lang' => '代理商管理',
     'order' => 100,
-    'auto' => 1000000,
+    'auto' => 50000,
     'config_type' => $type,
     'config_status' => $status,
     'info' => $info,
@@ -464,18 +473,6 @@ return array
             'list'      => true,
         ),
 
-        'import'        => array
-        (
-            'type'      => 'tinyint-1',
-            'name'      => '是否导入数据',
-            'default'   => '1',
-            'desc'      => '是否导入数据',
-            'match'     => 'is_numeric',
-            'option'    => $import,
-            //'search'    => 'select',
-            //'list'      => true,
-        ),
-
         'state'     => array
         (
             'type'      => 'tinyint-1',
@@ -516,13 +513,7 @@ return array
         'edit' => false,
         'button' => $button,
 
-        'list_button' => array
-        (
-            'list' => array('查看详情', '"member_area&mid={id}&page_type=1"'),
-
-            //'edit' => array('退款', 'status,tk_time,tk_pic,tk_desc,tk_admin,tk_status', '{status} == 6'),
-            //'delete' => array('删除', '', '{status} == 1'),
-        ),
+        'list_button' => $list_button,
     ),
 
     'request' => array

+ 2 - 1
service/agent/database/order.php

@@ -127,13 +127,14 @@ $invite_type = array
     1 => '邀请人',
     2 => '来源',
 );
-
+# id小于50000为导入的数据
 return array
 (
     # 表名
     'name' => 'order',
     # 显示给用户看的名称
     'lang' => '代理商订单',
+    'auto' => 50000,
     'set' => array
     (
     	'status' => $status,

+ 92 - 33
service/agent/lib/Import.php

@@ -14,28 +14,60 @@ class Import
         $this->db = Dever::db('agent/test:old');
     }
 
+    # 获取已审核的条件
+    private function get_yes_where()
+    {
+        //issuingstate=1 已发放权益
+        return 'restatus = 0 and status = 1 and  prestatus = 1 and isagent = 1';
+    }
+
+    # 获取审核失败的条件
+    private function get_no_where()
+    {
+        //issuingstate=1 已发放权益
+        return 'restatus = 1 and isagent = 1';
+    }
+
+    # 获取待审核的条件
+    private function get_where()
+    {
+        //issuingstate=1 已发放权益
+        return 'restatus = 0 and status = 0 and isagent = 1 and contractstatus = 1';
+    }
+
+    # 获取sql
+    public function get_sql_api()
+    {
+        $table['已审核'] = 'select count(*) as num,mobile from ims_ewei_shop_member where '.$this->get_yes_where().' group by mobile order by num desc';
+        $table['审核失败'] = 'select count(*) as num,mobile from ims_ewei_shop_member where '.$this->get_no_where().' group by mobile order by num desc';
+        $table['待审核'] = 'select count(*) as num,mobile from ims_ewei_shop_member where '.$this->get_where().' group by mobile order by num desc';
+
+        echo Dever::table($table);die;
+    }
+
     public function get_api()
     {
-        //select count(*) as num,mobile from ims_ewei_shop_member where restatus = 0 and issuingstate = 1 and status = 1 and  prestatus = 1 and isagent = 1 group by mobile order by num desc
         # 获取已审核通过、权益已发放的用户
-        $data = $this->db->fetchAll('select * from ims_ewei_shop_member where restatus = 0 and status = 1 and  prestatus = 1 and isagent = 1 order by id asc limit 10');
+        $data = $this->db->fetchAll('select * from ims_ewei_shop_member where '.$this->get_yes_where().' order by id asc limit 10');
 
         print_r($data);die;
 
         foreach ($data as $k => $v) {
 
-            # 创建代理商
-            $where = array();
-            $member = Dever::db('agent/member')->find($v['id']);
-            if (!$member) {
-                $data = $where;
+            # 创建订单
+            $order = Dever::db('agent/order')->find($v['id']);
+            if (!$order) {
+                $data = array();
                 $data['id'] = $v['id'];
+                $data['mobile'] = $v['mobile'];
                 $data['name'] = $v['realname'];
-                $data['rdate'] = $v['agenttime'];
                 $data['avatar'] = $v['avatar'];
                 $data['username'] = $v['nickname'];
+                $data['mid'] = $v['id'];
                 $data['parent_mid'] = $v['agentid'];
+                $data['parent_code'] = Dever::load("invite/api.code", $data['parent_mid']);
                 $data['role'] = $this->getRole($v['agentlevel']);
+
                 $data['area'] = str_replace(' ', ',', $v['datavalue']);
                 if ($v['streetvalue']) {
                     $data['area'] .= ',' . $v['streetvalue'];
@@ -47,6 +79,20 @@ class Import
                     $data['type'] = 2;
                 }
 
+                $data['price'] = $v['paymoney'];
+                $data['f_price'] = $data['price'];
+
+                $role = Dever::db('setting/role')->find($data['role']);
+                if ($role['type'] == 1) {
+                    $data['f_price'] = $role['price'];
+                } elseif ($role['type'] == 2) {
+                    $data['f_price'] = Dever::load('area/api')->getPrice($role['area'], $data['area']);
+                    if ($data['f_price'] <= 0) {
+                        $data['f_price'] = $data['price'];
+                    }
+                }
+                $data['agent_cash'] = $data['f_price'];
+
                 $data['sign'] = $v['contractsign'];
                 $data['idcard'] = $v['idnumber'];
                 if ($v['identity']) {
@@ -58,35 +104,45 @@ class Import
                         $data['idcard_back'] = $identity[1];
                     }
                 }
-
                 $data['company_name'] = $v['company'];
-
                 $data['address'] = $v['province'] . $v['city'] . $v['area'] . $v['street'];
 
-                $data['cash'] = $v['credit2'];
-                $data['group_sell'] = $v['allcommission'];
-                $data['status'] = 2;
-                $data['import'] = 2;
-                
-                $mid = Dever::db('agent/member')->insert($data);
-            } else {
-                $mid = $v['id'];
-            }
+                $data['pay_type'] = 2;
+                $data['pay_pic'] = $v['receipt'];
+
+                $data['status'] = $this->getStatus($v);
+                $data['audit_desc'] = $v['refuse'];
 
-            if ($mid > 0) {
-                # 创建代理商订单
-                $order_where['mid'] = $mid;
-                $order_where['mobile'] = $v['mobile'];
-                $order_where['status'] = 4;
-                $order = Dever::db('agent/order')->find($order_where);
+                if ($v['issuingstate'] == 1) {
+                    $data['goods_status'] = 3;
+                } else {
+                    $data['goods_status'] = 1;
+                }
+                $data['pay_status'] = 2;
 
-                if (!$order) {
-                    $order_data = $order_where;
-                    $order_data['pay_status'] = 1;
-                    $order_data['pay_status'] = 2;
-                    $order_data['pay_type'] = 2;
+                $data['order_num'] = Dever::load('agent/lib/order')->getOrderId();
+                $order_id = Dever::db('agent/order')->insert($data);
 
-                    $order_id = Dever::db('agent/order')->insert($order_data);
+                if ($order_id && $data['status'] == 4) {
+                    $member = Dever::db('agent/member')->find($v['id']);
+
+                    if ($data['status'] == 4) {
+                        $data['status'] = 2;
+                    } elseif ($data['status'] == 5) {
+                        $data['status'] = 1;
+                        $data['state'] = 2;
+                    } else {
+                        $data['status'] = 1;
+                    }
+                    $data['rdate'] = $v['agenttime'];
+                    $data['cash'] = $v['credit2'];
+                    $data['group_sell'] = $v['allcommission'];
+                    if (!$member) {
+                        Dever::db('agent/order')->insert($data);
+                    } else {
+                        $data['where_id'] = $member['id'];
+                        Dever::db('agent/order')->update($data);
+                    }
                 }
             }
         }
@@ -96,7 +152,7 @@ class Import
     # 状态对应
     private function getStatus($data)
     {
-        # 完成权益发放、财务审核、初审的认为订单有效
+        # 完成权益发放issuingstate、财务审核status、初审prestatus的认为订单有效
         if ($data['issuingstate'] == 1 && $data['status'] == 1 && $data['prestatus'] == 1) {
             return 4;
         } elseif ($data['status'] == 1 && $data['prestatus'] == 1) {
@@ -104,9 +160,12 @@ class Import
         } elseif ($data['prestatus'] == 1) {
             return 2;
         } elseif ($data['restatus'] == 1) {
+            # 审核失败
             return 5;
-        } else {
+        } elseif ($data['trainersign'] && $data['contractsign']) {
             return 1;
+        } else {
+            return -2;
         }
     }
 

+ 6 - 1
service/agent/lib/Member.php

@@ -351,10 +351,15 @@ class Member
             'name' => '设置直推上级',
         );
 
+        $url = Dever::url('project/database/list?project=agent&table=member', 'manage');
+        $search_type = Dever::input('search_type');
+        if ($search_type) {
+            $url .= '&search_option_pmid=-1';
+        }
         $head_btn[] = array
         (
             'type' => 'link',
-            'link' => Dever::url('project/database/list?project=agent&table=member', 'manage'),
+            'link' => $url,
             'name' => '返回上一页',
         );
         $head = array

+ 1 - 0
service/agent/lib/Order.php

@@ -273,6 +273,7 @@ class Order
     public function getOrderId()
     {
         $where['order_num'] = Dever::order('D');
+        $where['clear'] = true;
         $state = Dever::db('agent/order')->one($where);
         if (!$state) {
             return $where['order_num'];