dever 3 years ago
parent
commit
88db9d2304

+ 64 - 0
service/agent/lib/Agreement.php

@@ -0,0 +1,64 @@
+<?php
+
+namespace Agent\Lib;
+
+use Dever;
+
+class Agreement
+{
+    public function printer_api()
+    {
+        $main_config = Dever::db('main/config')->find();
+
+        # 常规字体
+        $font_size = 13;
+
+        $pdf = Dever::load('pdf/lib/base')->init();
+        $pdf->font(25, 'B');
+        $pdf->center('');
+        $pdf->br(7);
+        $pdf->center('北京橙猫美家科技有限公司');
+        $pdf->br(5);
+        $pdf->center('代');
+        $pdf->br();
+        $pdf->center('理');
+        $pdf->br();
+        $pdf->center('商');
+        $pdf->br();
+        $pdf->center('合');
+        $pdf->br();
+        $pdf->center('作');
+        $pdf->br();
+        $pdf->center('协');
+        $pdf->br();
+        $pdf->center('议');
+
+        $pdf->AddPage();
+        $pdf->font(18, 'B');
+        $pdf->center('代理商合作协议');
+        $pdf->br();
+        $pdf->font($font_size, '');
+        $pdf->right('合同编号:xxxxxx');
+        $pdf->br();
+
+        $pdf->font($font_size);
+        $pdf->left('        甲 方:', 25);
+        $pdf->font($font_size, 'U');
+        $pdf->left('中食民安(北京)科技有限公司(以下简称“甲方”)                              ', 80);
+        $pdf->br();
+
+        $pdf->font($font_size);
+        $pdf->left('        统一社会信用代码:', 50);
+        $pdf->font($font_size, 'U');
+        $pdf->left('91110106MA01T8R42B                                                                    ', 40);
+        $pdf->br();
+
+        $pdf->font($font_size);
+        $pdf->left('        地 址:', 25);
+        $pdf->font($font_size, 'U');
+        $pdf->left('北京经济技术开发区经海四路22号院四区5号楼14层1706                       ', 80);
+        $pdf->br();
+
+        $pdf->out('库存清单');
+    }
+}

+ 15 - 0
service/agent/src/My.php

@@ -437,6 +437,21 @@ class My extends Core
         return $this->data;
     }
 
+    # 获取我的业绩统计
+    public function getSell()
+    {
+        $this->data['user'] = $this->user;
+        $where['mid'] = $this->uid;
+        $this->data['list'] = Dever::db('bill/sell_stat')->getData($where);
+        if ($this->data['list']) {
+            foreach ($this->data['list'] as $k => $v) {
+                $this->data['list'][$k]['month'] = date('Y年m月', $v['month']);
+            }
+        }
+
+        return $this->data;
+    }
+
     # 提现详情
     public function tixianInfo()
     {

+ 30 - 0
service/bill/database/sell.php

@@ -218,5 +218,35 @@ return array
             'type' => 'all',
             'col' => '*',
         ),
+
+        'getNumByTime' => array
+        (
+            # 匹配的正则或函数 选填项
+            'option' => array
+            (
+                'start' => array('yes-cdate', '>='),
+                'end' => array('yes-cdate', '<='),
+                'type' => array('yes', 'in'),
+                'state' => 1,
+            ),
+            'type' => 'all',
+            'group' => 'mid',
+            'col' => '*,sum(num) as num',
+        ),
+
+        'getNumByTimeOne' => array
+        (
+            # 匹配的正则或函数 选填项
+            'option' => array
+            (
+                'start' => array('yes-cdate', '>='),
+                'end' => array('yes-cdate', '<='),
+                'mid' => 'yes',
+                'type' => array('yes', 'in'),
+                'state' => 1,
+            ),
+            'type' => 'one',
+            'col' => '*,sum(num) as num',
+        ),
     ),
 );

+ 18 - 2
service/bill/database/sell_stat.php

@@ -30,7 +30,7 @@ return array
             'match'     => 'is_numeric',
             'desc'      => '',
             'search'    => 'month',
-            'list'      => true,
+            'list'      => 'date("Y-m", {month})',
         ),
 
         'mid'      => array
@@ -96,6 +96,7 @@ return array
             'match'     => 'is_numeric',
             'update'    => 'text',
             'list'      => true,
+            //'list'      => 'Dever::load("bill/lib/manage.getSellNewNum", "{num}", "{month}", "{mid}")',
         ),
 
         'state'     => array
@@ -131,7 +132,6 @@ return array
             'option' => array
             (
                 'mid' => 'yes',
-                'type' => 'yes',
                 'state' => 1,
             ),
             'order' => array('id' => 'desc'),
@@ -139,5 +139,21 @@ return array
             'type' => 'all',
             'col' => '*',
         ),
+
+        'prev' => array
+        (
+            # 匹配的正则或函数 选填项
+            'option' => array
+            (
+                'month' => array('yes-month', '<'),
+                'mid' => 'yes',
+                'state' => 1,
+            ),
+            'order' => array('time' => 'desc', 'id' => 'desc'),
+            'type' => 'one',
+            'col' => '*,min(month) as time, sum(num) as num',
+            # 允许自定义以上配置
+            'config' => true,
+        ),
     ),
 );

+ 32 - 2
service/bill/lib/Cron.php

@@ -6,9 +6,39 @@ use Dever;
 
 class Cron
 {
-    public function sell()
+    public function sell_api()
     {
     	# 按月份统计团队业绩
-        
+        $month = Dever::input('month', date('Y-m'));
+        $start_time = $month .'-01 00:00:00';
+		$end_time = date('Y-m-d', strtotime($start_time. ' +1 month -1 day')).' 23:59:59';
+		$where['type'] = '2,10';
+        $where['start'] = Dever::maketime($start_time);
+        $where['end'] = Dever::maketime($end_time);
+        $data = Dever::db('bill/sell')->getNumByTime($where);
+        if ($data) {
+        	foreach ($data as $k => $v) {
+        		if ($v['num'] > 0) {
+        			$w['mid'] = $v['mid'];
+        			$w['month'] = $where['start'];
+        			$info = Dever::db('bill/sell_stat')->find($w);
+        			$w['new_num'] = $v['num'];
+        			$where['mid'] = $v['mid'];
+        			unset($where['start']);
+        			$total = Dever::db('bill/sell')->getNumByTimeOne($where);
+        			if ($total) {
+        				$w['num'] = $total['num'];
+        			}
+        			if ($info) {
+        				$w['where_id'] = $info['id'];
+        				Dever::db('bill/sell_stat')->update($w);
+        			} else {
+        				Dever::db('bill/sell_stat')->insert($w);
+        			}
+        		}
+        	}
+        }
+
+        return 'ok';
     }
 }

+ 21 - 0
service/bill/lib/Manage.php

@@ -90,4 +90,25 @@ class Manage
         	}
         }
     }
+
+    # 获取新增业绩
+    public function getSellNewNum($num, $month, $mid)
+    {
+        $where = array('month' => $month, 'mid' => $mid);
+        $search = Dever::search_button();
+        if ($search) {
+            $where['config']['group'] = $search[0];
+            $where['config']['col'] = str_replace('|id', '', $search[1]);
+        }
+        if ($num < 0) {
+            $num = 0;
+        }
+        $new_num = 0;
+        $prev = Dever::db('bill/sell_stat')->prev($where);
+        if ($prev && $num > 0 && $prev['num'] >= 0) {
+            $new_num = $num - $prev['num'];
+        }
+
+        return $new_num;
+    }
 }