dever 3 years ago
parent
commit
8be4b5d8b0

+ 13 - 2
service/agent/database/member_goods.php

@@ -150,8 +150,19 @@ return array
             'default'   => '0',
             'desc'      => '已兑换数量',
             'match'     => 'option',
-            'list_name' => '单价价值(元)',
-            'list'      => 'Dever::load("agent/lib/manage.getGoods#price", "{type}", "{type_id}", "{sku_id}")',
+            //'list'      => 'Dever::load("agent/lib/manage.getGoods#price", "{type}", "{type_id}", "{sku_id}")',
+            //'list_order' => 7,
+        ),
+
+        'cash'      => array
+        (
+            'type'      => 'float-11,2',
+            'name'      => '总价值',
+            'default'   => '0',
+            'desc'      => '总价值',
+            'match'     => 'is_numeric',
+            'update'    => 'text',
+            'list'      => true,
             'list_order' => 7,
         ),
 

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

@@ -77,6 +77,7 @@ return array
             'desc'      => '关联订单',
             'match'     => 'is_numeric',
             'list'		=> 'Dever::db("agent/order-find#order_num", {order_id})',
+            'list'      => true,
             'list_order' => 11,
         ),
 

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

@@ -37,6 +37,7 @@ $status = array
     3 => '待权益发放',
     4 => '已完成',
     5 => '已作废',
+    6 => '挂起',
 );
 
 $pay_status = array
@@ -466,6 +467,16 @@ return array
             'list_order' => 8,
         ),
 
+        'history_status'        => array
+        (
+            'type'      => 'tinyint-1',
+            'name'      => '记录挂起之前的状态',
+            'default'   => '1',
+            'desc'      => '状态',
+            'match'     => 'is_numeric',
+            'option'    => $status,
+        ),
+
         'goods_status'        => array
         (
             'type'      => 'tinyint-1',
@@ -564,12 +575,14 @@ return array
 
     'alter' => array
     (
-        3 => array
+        4 => array
         (
+            array('update', 'price', 'price', 'float-11,2 0 实付金额'),
+            array('update', 'f_price', 'f_price', 'float-11,2 0 原价'),
             array('update', 'agent_cash', 'agent_cash', 'float-11,2 0 代理费'),
             array('update', 'soft_cash', 'soft_cash', 'float-11,2 0 软件服务费'),
         ),
-        'version' => 3,
+        'version' => 4,
     ),
 
     'manage' => array

+ 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 = 1000004;
         }
         $this->checkLogin();
         if ($this->uid) {

+ 4 - 0
service/agent/lib/Level_log.php

@@ -21,6 +21,10 @@ class Level_log
 
     	$id = Dever::db('agent/member_level_log')->insert($data);
 
+        if ($id) {
+            # 升级时查看是否有升级的合同,如果没有需要生成
+        }
+
     	return $id;
     }
 

+ 41 - 12
service/agent/lib/Manage.php

@@ -159,14 +159,10 @@ class Manage
                 } else {
                     Dever::db('agent/order')->update(array('where_id' => $order_id, 'status' => 5));
 
-                    # 通知短信
-                    $skin = '';
-                    $order = Dever::db('agent/order')->find($order_id);
-                    $param = array
-                    (
-                        'test' => '111',
-                    );
-                    //Dever::load('sms/api')->send($skin, $order['mobile'], $param);
+                    if (Dever::project('sms')) {
+                        $order = Dever::db('agent/order')->find($order_id);
+                        Dever::load('sms/api')->send('daili_reg_no', $order['mobile'], array('name' => $order['name'], 'content' => $desc));
+                    }
                 }
             } elseif ($status == 3) {
                 $info = Dever::db('agent/order_process')->find($id);
@@ -180,6 +176,12 @@ class Manage
                 }
                 Dever::db('agent/order')->update(array('where_id' => $order_id, 'fdate' => time(), 'status' => 4, 'goods_status' => $goods_status));
 
+                # 通知短信
+                if (Dever::project('sms')) {
+                    $order = Dever::db('agent/order')->find($order_id);
+                    Dever::load('sms/api')->send('daili_reg_yes', $order['mobile'], array('name' => $order['name']));
+                }
+
                 $order = Dever::db('agent/order')->find($order_id);
                 if ($order && $order['mid']) {
                     $member = Dever::db('agent/member')->find($order['mid']);
@@ -323,10 +325,11 @@ class Manage
     # 新增权益
     private function addGoods($order, $v)
     {
+        $price = 0;
         $t = intval($order['price']/10000);
         if ($v['type'] == 1) {
             $v['num'] = $v['num'] * $t;
-            $goods_info = Dever::load('goods/lib/info')->getInfoBySku($type_id, $sku_id);
+            $goods_info = Dever::load('goods/lib/info')->getInfoBySku($v['type_id'], $v['sku_id']);
             $price = $goods_info['price'] * $v['num'];
         } elseif ($v['type'] == 2) {
             # 生成一个电子券
@@ -339,8 +342,10 @@ class Manage
             if (!$v['type_id']) {
                 return false;
             }
+        } elseif ($v['type'] == 3) {
+            $prize = Dever::db('setting/prize')->find($v['type_id']);
+            $price = $prize['price'];
         }
-        $price = 0;
 
         $where['mid'] = $order['mid'];
         $where['type'] = $v['type'];
@@ -351,6 +356,7 @@ class Manage
         if ($info) {
             $up['where_id'] = $info['id'];
             $up['total_num'] = $info['total_num'] + $v['num'];
+            $up['cash'] = $price;
             $state = Dever::db('agent/member_goods')->update($up);
 
             if ($state) {
@@ -360,6 +366,7 @@ class Manage
         } else {
             $up = $where;
             $up['total_num'] = $v['num'];
+            $up['cash'] = $price;
             $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'], $v['num'], 0, $up['total_num']);
@@ -446,6 +453,7 @@ class Manage
         Dever::config('base')->hook = true;
         $update = array();
         $audit = Dever::param('audit', $data);
+        $desc = Dever::param('audit_desc', $data);
         $info = Dever::db('agent/dh_order')->one($id);
         if ($audit > 1 && $info && $info['status'] == 2) {
             if ($audit == 2) {
@@ -456,6 +464,10 @@ class Manage
                 Dever::db('agent/dh_order')->update(array('where_id' => $id, 'status' => 7));
                 Dever::load('agent/lib/dhorder')->updateSell($info, 2);
 
+                if (Dever::project('sms')) {
+                    $member = Dever::db('agent/member')->find($info['mid']);
+                    Dever::load('sms/api')->send('daili_goods_no', $member['mobile'], array('name' => $member['name'], 'content' => $desc));
+                }
             }
         }
     }
@@ -490,12 +502,29 @@ class Manage
 
             return array('name' => $goods_info['name'] . $sku, 'price' => $goods_info['price']);
         } elseif ($type == 2) {
-            $card = Dever::db('card/info')->find($type_id);
-            return array('name' => $card['name'], 'price' => $card['price']);
+            $code = Dever::db('card/code')->find($type_id);
+            $card = Dever::db('card/info')->find($code['card_id']);
+            return array('name' => $card['name'], 'price' => $code['total_cash']);
         } elseif ($type == 3) {
             $prize = Dever::db('setting/prize')->find($type_id);
 
             return array('name' => $prize['name'], 'price' => $prize['price']);
         }
     }
+
+    public function setOrderStatus_api()
+    {
+        $where['where_id'] = Dever::input('id');
+        $order = Dever::db('agent/order')->find($where['where_id']);
+        if ($order) {
+            $where['status'] = Dever::input('value');
+            if ($where['status'] == 6) {
+                $where['history_status'] = $order['status'];
+            }
+            Dever::db('agent/order')->update($where);
+        }
+        
+
+        return 'reload';
+    }
 }

+ 20 - 2
service/agent/lib/Order.php

@@ -478,7 +478,7 @@ class Order
 
             # 分润信息
             if ($parent_member) {
-                $this->show_parent($parent_member, $info, $role, $result);
+                $this->show_parent($parent_member, $process, $info, $role, $result);
             }
 
             # 权益信息
@@ -508,6 +508,24 @@ class Order
             //$soft = '【<a href="" style="color:blue">拆分代理费</a>】';
         }
 
+        if ($info['status'] <= 3) {
+            # 未完成审核的订单,可以随时挂起
+            $button[] = array
+            (
+                'type' => 'action',
+                'link' => Dever::url('lib/manage.setOrderStatus?id=' . $info['id'] . '&value=6', 'agent'),
+                'name' => '挂起',
+            );
+        } elseif ($info['status'] == 6) {
+            # 恢复挂起
+            $button[] = array
+            (
+                'type' => 'action',
+                'link' => Dever::url('lib/manage.setOrderStatus?id=' . $info['id'] . '&value=' . $info['history_status'], 'agent'),
+                'name' => '恢复',
+            );
+        }
+
         if ($info['status'] == 1) {
             $purl = Dever::url('project/database/update?project=agent&table=order_process&order_id='.$info['id'].'&status=1&col=order_id,status,audit,desc', 'manage');
             if (isset($process[1]) && $process[1]) {
@@ -556,7 +574,7 @@ class Order
         return $button;
     }
 
-    private function show_parent($parent_member, $info, $role, &$result)
+    private function show_parent($parent_member, $process, $info, $role, &$result)
     {
         # 这里要获取上级信息
         $table = array();

+ 33 - 6
service/agent/src/My.php

@@ -305,6 +305,7 @@ class My extends Core
         if ($this->data['list']) {
             foreach ($this->data['list'] as $k => $v) {
                 if ($v['num'] <= 0) {
+                    unset($this->data['list'][$k]);
                     continue;
                 }
                 if ($v['type'] == 1) {
@@ -323,21 +324,23 @@ class My extends Core
                         'price' => $goods_info['price'],
                     );
                 } elseif ($v['type'] == 2) {
-                    $card = Dever::db('card/info')->find($v['type_id']);
-
+                    $code = Dever::db('card/code')->find($v['type_id']);
+                    $card = Dever::db('card/info')->find($code['card_id']);
                     $this->data['list'][$k] += array
                     (
                         'name' => $card['name'],
                         'sku' => '',
-                        'price' => $card['price'],
+                        'price' => $code['total_cash'],
+                        'card' => $code['card'],
                     );
                 } elseif ($v['type'] == 3) {
-                    $prize = Dever::db('setting/role_goods')->config['set']['prize'];
+                    $prize = Dever::db('setting/prize')->find($v['type_id']);
                     $this->data['list'][$k] += array
                     (
-                        'name' => $prize[$v['type_id']],
+                        'name' => $prize['name'],
                         'sku' => '',
-                        'price' => 0,
+                        'price' => $prize['price'],
+                        'desc' => $prize['desc'],
                     );
                 }
             }
@@ -606,6 +609,30 @@ class My extends Core
         return $this->data;
     }
 
+    # 对待签署的合同进行重新签署
+    public function upAgreement()
+    {
+        $sign = Dever::input('sign');
+        if (!$sign) {
+            Dever::alert('请上传签名');
+        }
+        $where['mid'] = $this->uid;
+        $where['id'] = Dever::input('id');
+        if ($where['id']) {
+            $info = Dever::db('agent/member_agreement')->find($where);
+            if ($info && $info['status'] == 1) {
+                $state = Dever::db('agent/member_agreement')->update(array('sign' => $sign, 'where_id' => $info['id']));
+                if ($state) {
+                    $role = Dever::db('setting/role')->find($info['role']);
+                    $info['sign'] = $sign;
+                    $name = Dever::load('agent/lib/agreement')->name($info['agreement_id'], $info, $role, 2, 2);
+                    return array('link' => $name[1]);
+                }
+            }
+        }
+        Dever::alert('合同不存在');
+    }
+
     # 获取我的业绩统计
     public function getSell()
     {

+ 13 - 1
service/bill/lib/Manage.php

@@ -56,6 +56,7 @@ class Manage
     {
     	Dever::config('base')->hook = true;
         $audit = Dever::param('audit', $data);
+        $desc = Dever::param('audit_desc', $data);
         if ($audit > 1) {
         	$info = Dever::db('bill/cash')->find(array('type' => 11, 'type_id' => $id));
         	if (!$info) {
@@ -66,7 +67,18 @@ class Manage
 	        	if ($info && $info['status'] == 1) {
 	        		Dever::db('bill/cash')->update(array('where_id' => $id, 'status' => 2, 'operdate' => time()));
 	        	}
-	        }
+                # 通知短信
+                if (Dever::project('sms')) {
+                    $member = Dever::db('agent/member')->find($info['mid']);
+                    Dever::load('sms/api')->send('daili_tixian_yes', $member['mobile'], array('name' => $member['name']));
+                }
+	        } else {
+                # 通知短信
+                if (Dever::project('sms')) {
+                    $member = Dever::db('agent/member')->find($info['mid']);
+                    Dever::load('sms/api')->send('daili_tixian_no', $member['mobile'], array('name' => $member['name'], 'content' => $desc));
+                }
+            }
         }
     }