rabin 3 سال پیش
والد
کامیت
ad049f0d24

+ 18 - 0
app/card/database/info.php

@@ -14,6 +14,12 @@ $card_type = array
     5 => '数字+大小写组合',
 );
 
+$create_type = array
+(
+    1 => '正常礼品卡',
+    2 => '合并礼品卡',
+);
+
 return array
 (
     # 表名
@@ -83,6 +89,18 @@ return array
             'list'      => true,
         ),
 
+        'create_type'        => array
+        (
+            'type'      => 'int-11',
+            'name'      => '生成类型',
+            'default'   => '1',
+            'desc'      => '生成类型',
+            'match'     => 'is_numeric',
+            'update'    => 'radio',
+            'option'    => $create_type,
+            'list'      => true,
+        ),
+
         'card_type'        => array
         (
             'type'      => 'int-11',

+ 1 - 0
app/card/database/type.php

@@ -204,6 +204,7 @@ return array
             '3,"城市卡", 1, "1,2", 2, 8, 1,' . DEVER_TIME,
             '4,"体验卡", 2, "1", 1, 7, 1,' . DEVER_TIME,
             '5,"门店卡", 2, "1,2", 1, 6, 1,' . DEVER_TIME,
+            '6,"平台店专用卡", 2, "10", 1, 5, 1,' . DEVER_TIME,
         ),
     ),
 

+ 2 - 0
app/card/src/Api.php

@@ -156,6 +156,8 @@ class Api extends Core
             if (!$state) {
                 Dever::alert('兑换失败,请重新兑换');
             }
+
+            # 验证代理商权益
         }
 
         $info = array();

+ 4 - 0
app/goods/lib/Set.php

@@ -9,6 +9,7 @@ class Set
     # 获取商品及其属性列表
     public function getGoodsList($id, $type, $table, $col = 'goods_id')
     {
+        $total = Dever::input('total', 1);
         $where['status'] = 1;
 
         if ($type != 'factory_id') {
@@ -70,6 +71,8 @@ class Set
                             $result[$i]['total'] = 0;
                         }
                     }
+
+                    $result[$i]['total'] = $result[$i]['total'] * $total;
                     $result[$i]['children'] = array();
                     $num = count($sku);
                     if ($num == 1 && $sku[0]['key'] == -1) {
@@ -143,6 +146,7 @@ class Set
                                 }
                             }
 
+                            $children['total'] = $children['total']*$total;
                             $result[$i]['children'][] = $children;
                         }
                     }

+ 1 - 2
service/agent/assets/pc/html/setMemberGoods.html

@@ -38,7 +38,6 @@
                     <table class="layui-table">
                         <thead>
                             <tr>
-                                <th lay-data="{field:'id'}">商品编码</th>
                                 <th lay-data="{field:'name'}">商品名称</th>
                                 <th lay-data="{field:'price', edit: 'text'}">价值(元)</th>
                                 <th lay-data="{field:'number', edit: 'text'}">更改总数量</th>
@@ -201,7 +200,7 @@
     {
         if (!get(node.id).length) {
             var addtr = '<tr class="mytr" id="goods_'+node.id+'">';
-            addtr += '<td class="goods_id">'+node.id+'</td>';
+            //addtr += '<td class="goods_id">'+node.id+'</td>';
             addtr += '<td class="goods_name">'+node.name+'</td>';     
             addtr += '<td class="goods_price">'+node.price+'</td>';     
             if (node.id.indexOf('_2') != -1 && node.id.indexOf('-') != -1) {

+ 7 - 0
service/agent/daemon/main.php

@@ -0,0 +1,7 @@
+<?php
+
+define('DEVER_DAEMON', true);
+
+include(dirname(__FILE__) . DIRECTORY_SEPARATOR . '../index.php');
+
+Dever::load('agent/lib/import.get');

+ 1 - 1
service/agent/database/member.php

@@ -294,7 +294,7 @@ return array
             'desc'      => '代理角色',
             'match'     => 'is_numeric',
             'search'	=> 'select',
-            //'update'    => 'select',
+            'update'    => 'select',
             'option'    => $role,
             'list'      => ($pmid) ? true : false,
         ),

+ 1 - 0
service/agent/database/member_area.php

@@ -16,6 +16,7 @@ $type = array
     1 => '购买',
     2 => '赠送',
     3 => '后台修改',
+    4 => '系统导入',
 );
 
 return array

+ 1 - 1
service/agent/database/member_goods.php

@@ -5,7 +5,7 @@
 $type = array
 (
     1 => '商品',
-    2 => '体验卡',
+    2 => '礼品卡',
     3 => '名额',
 );
 

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

@@ -37,7 +37,7 @@ $status = array
     2 => '待财务终审',
     3 => '待权益发放',
     4 => '已完成',
-    5 => '未通过审核',
+    5 => '驳回',
     6 => '挂起',
 );
 
@@ -767,5 +767,18 @@ return array
             'order' => array('cdate' => 'desc'),
             'col' => '*',
         ),
+
+        'getPrice' => array
+        (
+            # 匹配的正则或函数 选填项
+            'option' => array
+            (
+                'mid' => 'yes',
+                'status' => 4,
+                'state' => 1,
+            ),
+            'type' => 'one',
+            'col' => 'sum(price) as total',
+        ),
     ),
 );

+ 1 - 1
service/agent/lib/Agreement.php

@@ -135,7 +135,7 @@ class Agreement
         	if ($k == 4 && $order['order_type'] == 2) {
         		continue;
         	}
-        	$qdate = time();
+        	$qdate = (isset($order['cdate']) && $order['cdate']) ? $order['cdate'] : time();
         	$sdate = $qdate;
         	$edate = strtotime('+3 year', $sdate);
         	if ($k == 2 && $order['order_type'] == 2) {

+ 1 - 1
service/agent/lib/Core.php

@@ -14,7 +14,7 @@ class Core
     {
         $this->uid = Dever::load('passport/user')->check(false);
         if ($this->uid <= 0) {
-            $this->uid = 1000000;
+            $this->uid = 50000;
         }
         $this->checkLogin();
         if ($this->uid) {

+ 100 - 12
service/agent/lib/Import.php

@@ -2,6 +2,7 @@
 
 namespace Agent\Lib;
 
+set_time_limit(0);
 use Dever;
 
 class Import
@@ -46,16 +47,34 @@ class Import
     }
 
     public function get_api()
+    {
+        $host = 'https://cryl.yijiuguanfang.com/attachment/';
+        
+        $state = 1;
+        while($state) {
+            $state = $this->get_data($host, $state);
+        }
+
+        # 导入管理表
+        //$this->getRelation();
+        return 'ok';
+    }
+
+    public function get_data($host, $index = 0)
     {
         # 获取已审核通过、权益已发放的用户
-        $data = $this->db->fetchAll('select * from ims_ewei_shop_member where '.$this->get_yes_where().' order by id asc limit 10');
+        $index = $index - 1;
+        $limit = 1000;
+        $data = $this->db->fetchAll('select * from ims_ewei_shop_member where '.$this->get_yes_where().' order by id asc limit ' . $index . ', ' . $limit);
 
-        print_r($data);die;
+        if (!$data) {
+            return false;
+        }
 
         foreach ($data as $k => $v) {
 
             # 创建订单
-            $order = Dever::db('agent/order')->find($v['id']);
+            $order = Dever::db('agent/order')->find(array('id' => $v['id'], 'clear' => true));
             if (!$order) {
                 $data = array();
                 $data['id'] = $v['id'];
@@ -90,25 +109,34 @@ class Import
                     if ($data['f_price'] <= 0) {
                         $data['f_price'] = $data['price'];
                     }
+
+                    # 区域要进行占用
+                    Dever::load('area/api')->upStatus($data['area'], 2);
+                    $area_data = array('mid' => $v['id'], 'order_id' => $v['id'], 'role' => $data['role'], 'area' => $data['area']);
+                    $area_data['type'] = 4;
+                    $area_data['price'] = $data['f_price'];
+                    Dever::db('agent/member_area')->insert($area_data);
                 }
                 $data['agent_cash'] = $data['f_price'];
 
-                $data['sign'] = $v['contractsign'];
+                $data['sign'] = $v['contractsign'] ? $host . $v['contractsign'] : '';
                 $data['idcard'] = $v['idnumber'];
+                $data['idcard_front'] = $data['idcard_back'] = '';
                 if ($v['identity']) {
                     $identity = Dever::json_decode($v['identity']);
                     if (isset($identity[0])) {
-                        $data['idcard_front'] = $identity[0];
+                        $data['idcard_front'] = $host . $identity[0];
                     }
                     if (isset($identity[1])) {
-                        $data['idcard_back'] = $identity[1];
+                        $data['idcard_back'] = $host . $identity[1];
                     }
                 }
                 $data['company_name'] = $v['company'];
                 $data['address'] = $v['province'] . $v['city'] . $v['area'] . $v['street'];
 
                 $data['pay_type'] = 2;
-                $data['pay_pic'] = $v['receipt'];
+                $receipt = Dever::json_decode($v['receipt']);
+                $data['pay_pic'] = $host . $receipt[0];
 
                 $data['status'] = $this->getStatus($v);
                 $data['audit_desc'] = $v['refuse'];
@@ -119,18 +147,36 @@ class Import
                     $data['goods_status'] = 1;
                 }
                 $data['pay_status'] = 2;
+                $data['import'] = $v['olduid'] > 0 ? 3 : 2;
 
                 $data['order_num'] = Dever::load('agent/lib/order')->getOrderId();
-                $data['cdate'] = $v['createtime'];
+                $data['cdate'] = $v['agentapplytime'];
                 if ($data['status'] == 4) {
-                    $data['fdate'] = 1;
+                    $data['fdate'] = $v['agenttime'];
                 }
+                $data['order_type'] = 1;
+                $data['company_pic'] = '';
                 $order_id = Dever::db('agent/order')->insert($data);
 
                 if ($order_id) {
 
+                    if (!$v['preagenttime']) {
+                        $v['preagenttime'] = $v['agenttime'];
+                    }
                     if ($data['status'] == 2) {
+                        $this->addProcess($order_id, 1, $v['preagenttime'], $data);
+                    } elseif ($data['status'] == 3) {
+                        $this->addProcess($order_id, 1, $v['preagenttime'], $data);
+                        $this->addProcess($order_id, 2, $v['agenttime'], $data);
+                    } elseif ($data['status'] == 4) {
+                        $this->addProcess($order_id, 1, $v['preagenttime'], $data);
+                        $this->addProcess($order_id, 2, $v['agenttime'], $data);
+                        $this->addProcess($order_id, 3, $v['agenttime'], $data);
+                    }
 
+                    # 生成合同
+                    if ($data['sign']) {
+                        $this->addAgreement($data);
                     }
 
                     $member = Dever::db('agent/member')->find($v['id']);
@@ -143,9 +189,12 @@ class Import
                     } else {
                         $data['status'] = 1;
                     }
+                    $mc_member = $this->db->fetch('select * from ims_mc_members where uid = ' . $v['uid']);
                     $data['rdate'] = $v['agenttime'];
-                    $data['cash'] = $v['credit2'];
+                    $data['cash'] = ($mc_member && $mc_member['credit2']) ? $mc_member['credit2'] : $v['credit2'];
                     $data['group_sell'] = $v['allcommission'];
+
+                    Dever::load('invite/api')->setRelation($data['mid'], $data['parent_mid']);
                     if (!$member) {
                         Dever::db('agent/member')->insert($data);
                     } else {
@@ -155,7 +204,46 @@ class Import
                 }
             }
         }
-        print_r($data);die;
+        $index = $index + 1;
+        return $index * $limit;
+    }
+
+    # 导入管理表
+    private function getRelation()
+    {
+        $data = $this->db->fetchAll('select * from ims_ewei_shop_commission_relation');
+        if ($data) {
+            foreach ($data as $k => $v) {
+                $where['uid'] = $v['pid'];
+                $where['to_uid'] = $v['id'];
+                $where['level'] = $v['level'];
+                $info = Dever::db('invite/relation')->one($where);
+                if (!$info) {
+                    Dever::db('invite/relation')->insert($where);
+                }
+            }
+        }
+    }
+
+    # 生成合同
+    private function addAgreement($data)
+    {
+        Dever::load('agent/lib/agreement')->up($data);
+    }
+
+    # 更新进度
+    private function addProcess($order_id, $status, $time, $data)
+    {
+        $where['order_id'] = $order_id;
+        $where['status'] = $status;
+        $info = Dever::db('agent/order_process')->find($where);
+        if (!$info) {
+            if ($status == 3) {
+                $where['type'] = '1,2,3,5';
+            }
+            $where['cdate'] = $time;
+            Dever::db('agent/order_process')->insert($where);
+        }
     }
 
     # 状态对应
@@ -165,7 +253,7 @@ class Import
         if ($data['issuingstate'] == 1 && $data['status'] == 1 && $data['prestatus'] == 1) {
             return 4;
         } elseif ($data['status'] == 1 && $data['prestatus'] == 1) {
-            return 3;
+            return 4;
         } elseif ($data['prestatus'] == 1) {
             return 2;
         } elseif ($data['restatus'] == 1) {

+ 47 - 13
service/agent/lib/Manage.php

@@ -352,16 +352,21 @@ class Manage
     # 设置多个权益
     private function setGoods($order)
     {
+        $t = 1;
         $goods = Dever::db('agent/order_goods')->getData(array('order_id' => $order['id']));
         if (!$goods) {
             $goods = Dever::db('setting/role_goods')->getData(array('role_id' => $order['role'], 'give' => $order['order_type']));
+            $t = intval($order['agent_cash']/10000);
+            if ($t <= 0) {
+                $t = 1;
+            }
         }
 
         if ($goods) {
             $where = array();
             $goods_cash = 0;
             foreach ($goods as $k => $v) {
-                $price = $this->addGoods($order, $v);
+                $price = $this->addGoods($order, $v, $t);
                 if ($price && $v['type'] < 3) {
                     # 计算商品价值
                     $goods_cash += $price;
@@ -373,15 +378,12 @@ class Manage
             }
         }
     }
-
+    
     # 新增权益
-    private function addGoods($order, $v)
+    private function addGoods($order, $v, $t)
     {
         $cash = $price = 0;
-        $t = intval($order['price']/10000);
-        if ($t <= 0) {
-            $t = 1;
-        }
+        
         if ($v['type'] == 1) {
             $v['num'] = $v['num'] * $t;
             $goods_info = Dever::load('goods/lib/info')->getInfoBySku($v['type_id'], $v['sku_id']);
@@ -400,13 +402,45 @@ class Manage
             if (!$card) {
                 return false;
             }
-            $cash = $card['price']*$v['num'] * $t;
-            $price = $cash;
-            $v['sku_id'] = Dever::load('card/lib/code')->create($card, 2, $order['mid'], $order['id'], $cash);
-            if (!$v['sku_id']) {
-                return false;
-            }
             $name = $card['name'];
+            if ($card['create_type'] == 2) {
+                $cash = $card['price']*$v['num'] * $t;
+                $price = $cash;
+                $v['num'] = 1;
+                $v['sku_id'] = Dever::load('card/lib/code')->create($card, 2, $order['mid'], $order['id'], $cash);
+                if (!$v['sku_id']) {
+                    return false;
+                }
+            } else {
+                $cash = $card['price'];
+                $price = $cash;
+                $total = $t*$v['num'];
+                $t = 1;
+                for($i=0; $i<$total;$i++) {
+                    $v['sku_id'] = Dever::load('card/lib/code')->create($card, 2, $order['mid'], $order['id'], $cash);
+                    if ($v['sku_id']) {
+                        $where['mid'] = $order['mid'];
+                        $where['type'] = $v['type'];
+                        $where['type_id'] = $v['type_id'];
+                        $where['sku_id'] = $v['sku_id'];
+                        $info = Dever::db('agent/member_goods')->find($where);
+                        
+                        if (!$info) {
+                            $up = $where;
+                            $up['total_num'] = $t;
+                            $up['cash'] = $cash;
+                            $up['price'] = $price;
+                            $up['name'] = $name;
+                            $state = Dever::db('agent/member_goods')->insert($up);
+                            if ($state) {
+                                Dever::load('agent/lib/member_set')->log($order['mid'], $order['order_num'], $v['type'], $v['type_id'], $v['sku_id'], $t, 0, $t, $name);
+                            }
+                        }
+                    }
+                }
+                return;
+            }
+            
         } elseif ($v['type'] == 3) {
             $prize = Dever::db('setting/prize')->find($v['type_id']);
             $price = $prize['price'];

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

@@ -176,7 +176,9 @@ class Member
 
         if ($member['parent_mid'] && $member['parent_mid'] > 0) {
             $parent = Dever::db('agent/member')->one($member['parent_mid']);
-            $result['邀请人信息'] = $this->getShowInfo($parent);
+            if ($parent) {
+                $result['邀请人信息'] = $this->getShowInfo($parent);
+            }
         }
 
         $idcard_pic = '<a href="'.$member['idcard_front'].'" target="_blank"><img src="'.$member['idcard_front'].'" width="100" /></a>';

+ 46 - 20
service/agent/lib/Member_set.php

@@ -72,56 +72,82 @@ class Member_set
             $w['type_id'] = $type_id;
             $w['sku_id'] = $sku_id;
             $w['mid'] = $mid;
-            
-            $info = Dever::db('agent/member_goods')->one($w);
+
             if ($v['del'] == 2) {
+                $info = Dever::db('agent/member_goods')->one($w);
                 if ($info) {
                     Dever::db('agent/member_goods')->update(array('where_id' => $info['id'], 'state' => 2));
                 }
             } else {
-                if ($info) {
-                    $w['total_num'] = $v['total'];
-                } else {
-                    $w['total_num'] = $v['total'];
-                }
+                $total = $v['total'];
                 
                 $cash = $price = 0;
                 
                 if ($type == 1) {
                     $goods_info = Dever::load('goods/lib/info')->getInfoBySku($w['type_id'], $w['sku_id']);
                     $price = $goods_info['price'];
-                    $cash = $goods_info['price'] * $w['total_num'];
+                    $cash = $goods_info['price'] * $total;
                     if (isset($goods_info['sku'])) {
                         $sku = '-' . $goods_info['sku']['string'];
                     } else {
                         $sku = '';
                     }
                     $name = $goods_info['name'] . $sku;
-                } elseif ($type == 2 && $sku_id == -1) {
+                } elseif ($type == 2) {
                     # 体验卡
                     $card = Dever::db('card/info')->find($w['type_id']);
                     if (!$card) {
                         continue;
                     }
-                    $cash = $price = $card['price'] * $w['total_num'];
-                    $w['total_num'] = 1;
-                    $w['sku_id'] = Dever::load('card/lib/code')->create($card, 2, $mid, -1, $cash);
-                    if (!$w['sku_id']) {
+                    $name = $card['name'];
+                    if ($sku_id == -1) {
+                        if ($card['create_type'] == 2) {
+                            $cash = $price = $card['price'] * $total;
+                            $total = 1;
+                            $w['sku_id'] = Dever::load('card/lib/code')->create($card, 2, $mid, -1, $cash);
+                            if (!$w['sku_id']) {
+                                continue;
+                            }
+                        } else {
+                            $cash = $price = $card['price'];
+                            for($i=0; $i<$total;$i++) {
+                                $w['sku_id'] = Dever::load('card/lib/code')->create($card, 2, $mid, -1, $cash);
+                                if ($w['sku_id']) {
+                                    $w['total_num'] = 1;
+                                    $w['cash'] = $cash;
+                                    $w['price'] = $price;
+                                    $w['name'] = $name;
+                                    $state = Dever::db('agent/member_goods')->insert($w);
+                                    if ($state) {
+                                        Dever::load('agent/lib/member_set')->log($w['mid'], '', $w['type'], $w['type_id'], $w['sku_id'], 1, 0, 1, $name, $desc);
+                                    }
+                                }
+                            }
+                            continue;
+                        }
+                    } else {
+                        $sku = explode(',', $sku_id);
+                        foreach ($sku as $v1) {
+                            $w['sku_id'] = $v1;
+                            $info = Dever::db('agent/member_goods')->one($w);
+                            if ($info) {
+                                $u = array();
+                                $u['where_id'] = $info['id'];
+                                $u['state'] = 1;
+                                $state = Dever::db('agent/member_goods')->update($u);
+                            }
+                        }
                         continue;
                     }
-                    $name = $card['name'];
-                } elseif ($type == 2 && $sku_id > 0) {
-                    # 体验卡
-                    $card = Dever::db('card/code')->find($w['sku_id']);
-                    $cash = $price = $card['total_cash'];
-                    $card = Dever::db('card/info')->find($card['card_id']);
-                    $name = $card['name'];
+                    
                 } elseif ($type == 3) {
                     $prize = Dever::db('setting/prize')->find($w['type_id']);
                     $price = $prize['price'];
                     $cash = $prize['price'] * $w['total_num'];
                     $name = $prize['name'];
                 }
+                $info = Dever::db('agent/member_goods')->one($w);
+                $w['total_num'] = $total;
                 $w['cash'] = $cash;
                 $w['price'] = $price;
                 $w['name'] = $name;

+ 15 - 10
service/agent/lib/Order.php

@@ -373,9 +373,10 @@ class Order
         }
         $data['order_type'] = 1;
         if ($member) {
-            $area = Dever::db('agent/member_area')->getOne(array('mid' => $member['id'], 'type' => 1));
-            if ($area && $area['price'] > 0 && $data['price'] > $area['price']) {
-                $data['price'] -= $area['price'];
+            //$area = Dever::db('agent/member_area')->getOne(array('mid' => $member['id'], 'type' => 1));
+            $price = Dever::db('agent/order')->getPrice(array('mid' => $member['id']));
+            if ($price && $data['price'] > $price['total']) {
+                $data['price'] -= $price['total'];
                 $data['order_type'] = 2;
             } else {
                 Dever::alert('代理区域无法升级');
@@ -910,11 +911,17 @@ class Order
 
     private function show_goods($process, $info, $role, &$result)
     {
+        $t = intval($info['agent_cash']/10000);
+        if ($t <= 0) {
+            $t = 1;
+        }
         $goods = Dever::db('agent/order_goods')->getData(array('order_id' => $info['id']));
         if (!$goods) {
             $goods = Dever::db('setting/role_goods')->getData(array('role_id' => $info['role'], 'give' => $info['order_type']));
+        } else {
+            $t = 1;
         }
-
+        
         if (isset($process[3]['type']) && is_array($process[3]['type']) && in_array(2, $process[3]['type'])) {
             $process_status = 1;
             $process_title = '(已发放权益)';
@@ -925,7 +932,7 @@ class Order
             
             $process_button[] = array(
                 'type' => 'link',
-                'link' => Dever::url('lib/order_set.home?order_id='.$info['id'].'&role_id=' . $info['role'], 'agent'),
+                'link' => Dever::url('lib/order_set.home?order_id='.$info['id'].'&role_id=' . $info['role'] . '&total=' . $t, 'agent'),
                 'name' => '修改权益'
             );
             $process_button[] = array(
@@ -939,10 +946,7 @@ class Order
             $table = array();
             $table['head'] = array('权益类型', '权益名称', '权益价值', '权益数量');
             $table['body'] = array();
-            $t = intval($info['price']/10000);
-            if ($t <= 0) {
-                $t = 1;
-            }
+            
             foreach ($goods as $k => $v) {
                 if ($v['type'] == 1) {
                     $goods_info = Dever::load('goods/lib/info')->getInfoBySku($v['type_id'], $v['sku_id']);
@@ -955,7 +959,8 @@ class Order
                     $table['body'][] = array('商品', $goods_info['name'] . $sku, $goods_info['price'], $v['num']);
                 } elseif ($v['type'] == 2) {
                     $card = Dever::db('card/info')->find($v['type_id']);
-                    $card['price'] = $card['price'] * $t;
+                    $card['price'] = $card['price'];
+                    $v['num'] = $v['num'] * $t;
                     $table['body'][] = array('电子券', $card['name'], $card['price'], $v['num']);
                 } elseif ($v['type'] == 3) {
                     $prize = Dever::db('setting/prize')->find($v['type_id']);

+ 2 - 1
service/agent/lib/Order_set.php

@@ -23,10 +23,11 @@ class Order_set
     public function home_api()
     {
         $data = array();
+        $data['total'] = Dever::input('total', 1);
         $data['order_id'] = Dever::input('order_id');
         $data['role_id'] = Dever::input('role_id', 1);
         $data['host'] = Dever::url('lib/order_set.home?id=' . $data['role_id'] . '&order_id=' . $data['order_id'], 'agent');
-        $data['url'] = Dever::url('lib/order_set.goods?role_id=' . $data['role_id'] . '&order_id=' . $data['order_id'], 'agent');
+        $data['url'] = Dever::url('lib/order_set.goods?total='.$data['total'].'&role_id=' . $data['role_id'] . '&order_id=' . $data['order_id'], 'agent');
         $data['submit'] = Dever::url('lib/order_set.action_commit?json=1', 'agent');
 
         return Dever::render('setOrderGoods', $data);

+ 25 - 13
service/agent/lib/Set.php

@@ -17,6 +17,7 @@ class Set
     {
         $order_id = Dever::input('order_id');
         $mid = Dever::input('mid');
+        $total = Dever::input('total', 1);
 
         $col = 'role_id';
         $table = 'setting/role_goods';
@@ -62,12 +63,12 @@ class Set
                         $info['num'] = $info['total_num'];
                     }
                     $data[0]['children'][$k]['select'] = 1;
-                    $data[0]['children'][$k]['total'] = $info['num'];
+                    $data[0]['children'][$k]['total'] = $info['num'] * $total;
                 }
             }
         }
 
-        $card = Dever::db('card/info')->getDataByType(array('type_id' => '4,6'));
+        $card = Dever::db('card/info')->getDataByType(array('type_id' => '1,4,6'));
         if ($card) {
             $data[1]['id'] = -2;
             $data[1]['name'] = '厨人E卡';
@@ -86,19 +87,30 @@ class Set
                 $data[1]['children'][$k]['total'] = 0;
                 $data[1]['children'][$k]['end'] = true;
 
-                $info = Dever::db($table)->find(array('type' => 2, 'type_id' => $v['id'], $col => $value));
-                if ($info) {
-                    if ($table == 'agent/member_goods') {
-                        //$info['num'] = $info['total_num'] - $info['sell_num'];
-                        $info['num'] = $info['total_num'];
-                        if ($info['sku_id'] > 0) {
-                            $code = Dever::db('card/code')->find($info['sku_id']);
-                            $data[1]['children'][$k]['price'] = $code['total_cash'];
-                            $data[1]['children'][$k]['id'] = $v['id'] . '-' . $info['sku_id'] . '_2';
+                if ($table == 'agent/member_goods') {
+                    $info = Dever::db($table)->select(array('type' => 2, 'type_id' => $v['id'], $col => $value));
+                    if ($info) {
+                        $num = 0;
+                        $data[1]['children'][$k]['price'] = 0;
+                        $sku_id = array();
+                        foreach ($info as $k1 => $v1) {
+                            $num += $v1['total_num'];
+                            if ($v1['sku_id'] > 0) {
+                                $code = Dever::db('card/code')->find($v1['sku_id']);
+                                $data[1]['children'][$k]['price'] += $code['total_cash'];
+                                $sku_id[] = $v1['sku_id'];
+                            }
                         }
+                        $data[1]['children'][$k]['id'] = $v['id'] . '-' . implode(',', $sku_id) . '_2';;
+                        $data[1]['children'][$k]['select'] = 1;
+                        $data[1]['children'][$k]['total'] = $num;
+                    }
+                } else {
+                    $info = Dever::db($table)->find(array('type' => 2, 'type_id' => $v['id'], $col => $value));
+                    if ($info) {
+                        $data[1]['children'][$k]['select'] = 1;
+                        $data[1]['children'][$k]['total'] = $info['num'] * $total;
                     }
-                    $data[1]['children'][$k]['select'] = 1;
-                    $data[1]['children'][$k]['total'] = $info['num'];
                 }
             }
         }

+ 7 - 2
service/agent/src/My.php

@@ -662,11 +662,16 @@ class My extends Core
         # 获取上次提现记录
         $this->data['mybank'] = Dever::db('bill/tixian')->getNew(array('mid' => $this->uid));
         if($this->data['user']){#234初中高可提现
+            if ($this->data['user']['level_id'] > 0) {
+                $this->data['user']['ti_type'] = 1;
+            }
+            /*
             if($this->data['user']['level_id']==2 || $this->data['user']['level_id']==3 || $this->data['user']['level_id']==4){
                 $this->data['user']['ti_type']=1;
             }else{
                 $this->data['user']['ti_type']=2;
             }
+            */
             $level=Dever::db('setting/level')->one(array('id'=>$this->data['user']['level_id'],'state'=>1));
             $this->data['config']['market_desc']=$level['market_desc'];
         }
@@ -705,7 +710,7 @@ class My extends Core
         }
         $sign = Dever::input('sign');
         if(!$sign){
-            Dever::alert('手写签名不能为空');
+            //Dever::alert('手写签名不能为空');
         }
 
         $config = Dever::db('setting/base')->one();
@@ -967,4 +972,4 @@ class My extends Core
         $id = Dever::input('id');
         return Dever::load('agent/address')->del($this->uid, $id, 2);
     }
-}
+}

+ 1 - 1
service/setting/database/role_goods.php

@@ -15,7 +15,7 @@ $give = array
 $type = array
 (
 	1 => '商品',
-	2 => '体验卡',
+	2 => '礼品卡',
     3 => '名额',
 );