Selaa lähdekoodia

Merge branch 'master' of http://git.dever.cc/dever-product/churen

Your Name 3 vuotta sitten
vanhempi
commit
3a15a5724d
3 muutettua tiedostoa jossa 64 lisäystä ja 27 poistoa
  1. 11 23
      tool/work/database/branch.php
  2. 14 3
      tool/work/lib/Appoint.php
  3. 39 1
      tool/work/lib/Manage.php

+ 11 - 23
tool/work/database/branch.php

@@ -1,10 +1,7 @@
 <?php
 $group = function()
 {
-    $array = array
-    (
-        -1 => array('id' => '-1', 'name' => '请选择'),
-    );
+    $array = array();
     $data = Dever::load('manage/group-state');
     if($data)
     {
@@ -91,12 +88,11 @@ return array
             'match'     => 'is_string',
             // 'option'    => $group,
             'update'    => 'linkage',
-            'option'    => Dever::url('lib/appoint.get?level_total=2', 'work'),
+            'option'    => Dever::url('lib/appoint.get?level_total=2&type=1', 'work'),
             'list'      => 'Dever::load("work/lib/manage.xietiao#group",{id})',
+            'load'      => 'coor',
         ),
 
-
-
         'group_id'      => array
         (
             'type'      => 'int-11',
@@ -104,27 +100,19 @@ return array
             'default'   => '-1',
             'desc'      => '部门id',
             'match'     => 'is_string',
-            // 'option'    => $cadre,
+            'option'    => $group,
             'update'    => 'hidden',
         ),
 
-        'coor'      => array
+        'coor'          => array
         (
-            'type'      => 'int-11',
+            'type'      => 'varchar-2000',
             'name'      => '协调人',
-            'default'   => '-1',
-            'desc'      => '协调人',
-            'match'     => 'is_string',
-            // 'option'    => $coor,
-            // 'update'    => 'select',
-            // 'search'    => array
-            // (
-            //     'api' => 'active/info-getSearch',
-            //     'col' => 'col',
-            //     'result' => 'id',
-            //     'search' => 'active_id',
-            // ),
-            'list'      => 'Dever::load("work/lib/manage.xietiao#name",{id})',
+            'default'   => '',
+            'desc'      => '请先选择协调人',
+            'match'     => 'option',
+            'update'    => 'load',
+            'update_load' => array('work/lib/manage.getCoor', 'group'),
         ),
 
         'type'        => array

+ 14 - 3
tool/work/lib/Appoint.php

@@ -110,6 +110,7 @@ Class Appoint
     );
 	public function get_api()
     {
+        $type = Dever::input('type', 2);
         # 联动总数,默认到部门
         $level_total = Dever::input('level_total', 1);
 
@@ -139,7 +140,7 @@ Class Appoint
             $data = $this->group();
 
         } elseif ($level_num == 2) {
-        	$data = $this->group_admin($level_id);
+        	$data = $this->group_admin($level_id, $type);
         } 
 
         if (!$data) {
@@ -163,8 +164,18 @@ Class Appoint
     	}
     	return $data;
     }
-    public function group_admin($level_id){
-    	$data = Dever::load('manage/company')->getAdmin($level_id);
+    public function group_admin($level_id, $type = 1){
+        $admin_id = false;
+        if ($type == 2) {
+            $info = Dever::db('work/branch')->find(array('group_id' => $level_id));
+        
+            if ($info) {
+                $temp = explode(',', $info['group']);
+                $admin_id = $temp[1] . ',' . $info['coor'];
+            }
+        }
+        
+    	$data = Dever::load('manage/company')->getAdmin($level_id, false, $admin_id);
     	foreach ($data as $k => $v) {
     		foreach ($v as $k1 => $v1) {
     			$data[$k]['value'] = $v['id'];

+ 39 - 1
tool/work/lib/Manage.php

@@ -4,7 +4,45 @@ namespace Work\Lib;
 use Dever;
 Class Manage 
 {
-	
+	public function getCoor_api()
+	{
+		$id = Dever::input('id');
+		$info = false;
+		if ($id) {
+			$info = Dever::db('work/branch')->one($id);
+		}
+
+		$group = Dever::input('group');
+		$temp = explode(',', $group);
+		$group_id = $temp[0];
+		$admin_id = false;
+		if (isset($temp[1])) {
+			$admin_id = $temp[1];
+		} else {
+			return 'no';
+		}
+
+		$admin = Dever::load('manage/company')->getAdmin($group_id, $admin_id);
+		$config = array();
+		$config['struct']['coor'] = array
+        (
+            'type'      => 'varchar-2000',
+            'name'      => '协调人',
+            'default'   => '',
+            'desc'      => '请先选择协调人',
+            'match'     => 'option',
+            'update'    => 'checkbox',
+            'value'		=> $info ? $info['coor'] : false,
+            'option' 	=> $admin,
+        );
+
+		$data = array();
+
+		$result = Dever::load('manage/database')->update_struct($config, false, array(), -1, '', true);
+
+		return implode('', $result);
+	}
+
 	public function setInfoStatus_api ()
 	{
 		$id = Dever::input('id');