Your Name 3 gadi atpakaļ
vecāks
revīzija
f5eccce43d

+ 1 - 1
tool/clue/database/info.php

@@ -402,7 +402,7 @@ return array
             'match'     => 'option',
             // 'search'    => 'linkage',
             'update'    => 'linkage',
-            'option'    => Dever::url('lib/appoint.get?level_total=2', 'work'),
+            'option'    => Dever::url('lib/salepeople.get?level_total=2', 'clue'),
             // $salepeople,
             'list_name' => '跟进人',
             'list'      => 'Dever::load("clue/lib/info.getNum#people",{id})',

+ 12 - 0
tool/clue/database/salepeople.php

@@ -132,5 +132,17 @@ return array
             'order' => array('reorder' => 'desc', 'id' => 'asc'),
             'col' => '*',
         ),
+        'getState' => array
+        (
+            # 匹配的正则或函数 选填项
+            'option' => array
+            (
+                // 'id' => array('yes','>'),
+                'state' => 1,
+            ),
+            'type' => 'all',
+            'order' => array('reorder' => 'desc', 'id' => 'asc'),
+            'col' => '*|group_id',
+        ),
     ),
 );

+ 91 - 0
tool/clue/lib/Salepeople.php

@@ -0,0 +1,91 @@
+<?php
+namespace Clue\Lib;
+
+use Dever;
+Class Salepeople
+{
+	private $default = array
+    (
+        'value' => -1,
+        'name' => '不选择',
+    );
+    private $search_default = array
+    (
+        'value' => -1,
+        'name' => '部门',
+    );
+	public function get_api()
+    {
+        $type = Dever::input('type', 2);
+        # 联动总数,默认到部门
+        $level_total = Dever::input('level_total', 1);
+
+        # 当前联动级别
+        $level_num = Dever::input('level_num');
+
+        # 一般为id
+        $level_id = Dever::input('level_id');
+
+        # 是否是搜索列表页
+        $level_search = Dever::input('level_search');
+        if ($level_search) {
+            $default = $this->search_default;
+            if ($level_num == 1) {
+                $default['name'] = '部门选择';
+            } elseif ($level_num == 2) {
+                $default['name'] = '组员选择';
+            } 
+        } else {
+            $default = $this->default;
+        }
+        if ($level_num == 1) {
+            $data = $this->group();
+
+        } elseif ($level_num == 2) {
+        	$data = $this->group_admin($level_id);
+        } 
+
+        if (!$data) {
+            Dever::alert('error');
+        }
+
+        if ($level_search || $level_num >= 1) {
+            array_unshift($data, $default);
+        }
+        if ($level_num == 2) {
+            unset($data[0]);
+        }
+        $result['level_total'] = $level_total;
+        $result['list'] = $data;
+        return $result;
+    }
+    public function group(){
+    	$data = Dever::db('clue/salepeople')->getState();
+    	if ($data) {
+    		foreach ($data as $k => $v) {
+	    		$data[$k]['value'] = $v['group_id'];
+	    		$group = Dever::db('manage/group')->find(array('id'=>$v['group_id']));
+	    		$data[$k]['name'] = $group['name'];
+	    	}
+    	} else {
+    		$data = array();
+    		$data['value'] = -1;
+    	}
+    	
+    	return $data;
+    }
+    public function group_admin($level_id){
+    	$data = Dever::db('clue/salepeople')->state(array('group_id'=>$level_id));
+    	foreach ($data as $k =>$v) {
+    		$group = explode(',',$v['group']);
+    		if (isset($group[1]) && $group[1]) {
+    			$admin = Dever::db('manage/admin')->find($group[1]);
+    			if ($admin) {
+    				$data[$k]['value'] = $admin['id'];
+    				$data[$k]['name'] = $admin['username'];
+    			}
+    		}
+    	}
+    	return $data;
+    }
+}