dever 3 years ago
parent
commit
2592906a51

+ 14 - 4
app/cash/lib/Cron.php

@@ -72,12 +72,14 @@ class Cron
         $data[$type . '_id'] = $info['id'];
         $data['type'] = $info['stat_type'];
         $data['day'] = $start;
-        $info = Dever::db('cash/' . $type)->find($data);
+        $find = Dever::db('cash/' . $type)->find($data);
 
         if ($type == 'factory') {
+            $msg_type = 4;
             $cash = Dever::db('cash/order')->getPCash($where);
             $data['cash'] = $cash['total'] ? $cash['total'] : 0;
         } else {
+            $msg_type = 3;
             $cash = Dever::db('cash/order')->getCash($where);
             $data['cash'] = $cash['total'] ? $cash['total'] : 0;
         }
@@ -87,11 +89,19 @@ class Cron
         $data['start'] = $start;
         $data['end'] = $end;
 
-        if (!$info) {
-            Dever::db('cash/' . $type)->insert($data);
+        if (!$find) {
+            $id = Dever::db('cash/' . $type)->insert($data);
         } else {
-            $data['where_id'] = $info['id'];
+            $id = $data['where_id'] = $find['id'];
             Dever::db('cash/' . $type)->update($data);
         }
+
+        if (($type == 'factory' || $type == 'store') && Dever::project('message') && $id) {
+            $msg_param['type'] = 2;//消息头类型2是对账单消息
+            $msg_param['id'] = $id;
+            $msg_param = Dever::json_encode($msg_param);
+            $msg = '您的'.Dever::load('cash/lib/set')->statDate($data['type'], $data['day']).'对账单已经生成,请您及时确认,确认之后方可结算';
+            Dever::load('message/lib/data')->push(-1, $info['id'], '对账通知', $msg, 6, $msg_type, false, $msg_param);
+        }
     }
 }

+ 24 - 5
app/factory/admin/Auth.php

@@ -297,11 +297,6 @@ class Auth
     public function menu()
     {
         $info = $this->info();
-        if ($info && Dever::project('message')) {
-            $this->msg = Dever::load('message/lib/data')->num($info['factory_id'], 4);
-        } else {
-            $this->msg = 0;
-        }
 
         $data = array
         (
@@ -370,6 +365,30 @@ class Auth
             ),
         );
 
+        $role = explode(',', $info['role_id']);
+
+        $type = false;
+        if (!in_array(1, $role)) {
+            $type = array(1,2,6);
+            unset($data['set']['child']['set']);
+            unset($data['set']['child']['user']);
+            if (!in_array(2, $role)) {
+                unset($data['order']);
+                unset($type[1]);
+            }
+            if (!in_array(4, $role)) {
+                unset($data['stat']);
+                unset($type[2]);
+            }
+            $type = implode(',', $type);
+        }
+
+        if ($info && Dever::project('message')) {
+            $this->msg = Dever::load('message/lib/data')->num($info['factory_id'], 4, $type);
+        } else {
+            $this->msg = 0;
+        }
+
         return $data;
     }
 

+ 29 - 0
app/factory/admin/Core.php

@@ -9,5 +9,34 @@ class Core
     {
         $this->user = Dever::load('factory/admin/auth.check');
         $this->id = $this->user['factory_id'];
+
+        $role = explode(',', $this->user['role_id']);
+        $uri = Dever::uri();
+
+        $this->user['msg_type'] = false;
+        if (!in_array(1, $role)) {
+        	$this->user['msg_type'] = array(1,2,6);
+            if (!in_array(2, $role)) {
+            	unset($this->user['msg_type'][1]);
+            	if (strstr($uri, 'order')) {
+            		Dever::alert('您没有权限');
+            	}
+            }
+            if (!in_array(4, $role)) {
+            	unset($this->user['msg_type'][2]);
+                if (strstr($uri, 'stat')) {
+            		Dever::alert('您没有权限');
+            	}
+            }
+
+            if (strstr($uri, 'set')) {
+            	Dever::alert('您没有权限');
+            }
+            if (strstr($uri, 'user')) {
+            	Dever::alert('您没有权限');
+            }
+
+            $this->user['msg_type'] = implode(',', $this->user['msg_type']);
+        }
     }
 }

+ 2 - 2
app/factory/admin/Msg.php

@@ -8,7 +8,7 @@ class Msg extends Core
     # 列表
     public function getList()
     {
-        $data = Dever::load('message/lib/data')->read($this->id, false, false, false, 4);
+        $data = Dever::load('message/lib/data')->read($this->id, $this->user['msg_type'], false, false, 4);
 
         $html = '';
 		if ($data) {
@@ -32,7 +32,7 @@ class Msg extends Core
 						if ($data[$k]['param']['type'] == 1) {
 							$view = Dever::url('order_view?type=2&order_id=' . $data[$k]['param']['id'], 'factory');
 						} elseif ($data[$k]['param']['type'] == 2) {
-							$view = '';
+							$view = Dever::url('stat_view?id=' . $data[$k]['param']['id'] . '&type=factory&show=2', 'factory');
 						}
 
 						if ($view) {

+ 10 - 0
app/factory/admin/Order.php

@@ -146,6 +146,16 @@ class Order extends Core
     	}
     	Dever::db('shop/buy_order')->update(array('status' => 4, 'where_id' => $update['order_id']));
 
+        # 给仓库发消息
+        $order = Dever::db('shop/buy_order')->find($update['order_id']);
+        if (Dever::project('message') && $order) {
+            $msg_param['type'] = 3;//消息头类型3是入库订单消息
+            $msg_param['id'] = $order['id'];
+            $msg_param = Dever::json_encode($msg_param);
+            $msg = '您的有新的入库订货单已发货,请及时查收后确认。';
+            Dever::load('message/lib/data')->push(-1, $order['type_id'], '入库订货单通知', $msg, 7, 3, false, $msg_param);
+        }
+
     	return 'reload';
     }
 

+ 0 - 1
app/factory/database/member.php

@@ -4,7 +4,6 @@ $role = array
 (
     1 => '管理员',
     2 => '配货员',
-    3 => '库存管理员',
     4 => '财务',
 );
 

+ 30 - 5
app/store/admin/Auth.php

@@ -297,11 +297,6 @@ class Auth
     public function menu()
     {
         $info = $this->info();
-        if ($info && Dever::project('message')) {
-            $this->msg = Dever::load('message/lib/data')->num($info['store_id'], 3);
-        } else {
-            $this->msg = 0;
-        }
 
         $data = array
         (
@@ -385,6 +380,36 @@ class Auth
             ),
         );
 
+        $role = explode(',', $info['role_id']);
+
+        $type = false;
+        if (!in_array(1, $role)) {
+            $type = array(1,2,6,7);
+            unset($data['set']['child']['set']);
+            unset($data['set']['child']['user']);
+            if (!in_array(2, $role)) {
+                unset($data['order']['child']['order']);
+                unset($type[1]);
+            }
+            if (!in_array(4, $role)) {
+                unset($data['stat']);
+                unset($type[2]);
+            }
+            if (!in_array(3, $role)) {
+                unset($data['order']['child']['factory_order']);
+                unset($data['order']['child']['ku']);
+                unset($data['order']['child']['out']);
+                unset($type[3]);
+            }
+            $type = implode(',', $type);
+        }
+
+        if ($info && Dever::project('message')) {
+            $this->msg = Dever::load('message/lib/data')->num($info['store_id'], 3, $type);
+        } else {
+            $this->msg = 0;
+        }
+
         return $data;
     }
 

+ 36 - 0
app/store/admin/Core.php

@@ -9,5 +9,41 @@ class Core
     {
         $this->user = Dever::load('store/admin/auth.check');
         $this->id = $this->user['store_id'];
+
+        $role = explode(',', $this->user['role_id']);
+        $uri = Dever::uri();
+
+        $this->user['msg_type'] = false;
+        if (!in_array(1, $role)) {
+        	$this->user['msg_type'] = array(1,2,6,7);
+            if (!in_array(2, $role)) {
+            	unset($this->user['msg_type'][1]);
+            	if ($uri == 'order' || strstr($uri, 'admin/order') || strstr($uri, 'order_')) {
+            		Dever::alert('您没有权限');
+            	}
+            }
+            if (!in_array(4, $role)) {
+            	unset($this->user['msg_type'][2]);
+                if (strstr($uri, 'stat')) {
+            		Dever::alert('您没有权限');
+            	}
+            }
+
+            if (!in_array(3, $role)) {
+            	unset($this->user['msg_type'][3]);
+                if (strstr($uri, 'factory_order') || strstr($uri, 'goods') || strstr($uri, 'out')) {
+            		Dever::alert('您没有权限');
+            	}
+            }
+
+            if (strstr($uri, 'set')) {
+            	Dever::alert('您没有权限');
+            }
+            if (strstr($uri, 'user')) {
+            	Dever::alert('您没有权限');
+            }
+
+            $this->user['msg_type'] = implode(',', $this->user['msg_type']);
+        }
     }
 }

+ 5 - 3
app/store/admin/Msg.php

@@ -8,7 +8,7 @@ class Msg extends Core
     # 列表
     public function getList()
     {
-        $data = Dever::load('message/lib/data')->read($this->id, false, false, false, 3);
+        $data = Dever::load('message/lib/data')->read($this->id, $this->user['msg_type'], false, false, 3);
 
         $html = '';
 		if ($data) {
@@ -32,8 +32,10 @@ class Msg extends Core
 						if ($data[$k]['param']['type'] == 1) {
 							$view = Dever::url('order_view?type=2&order_id=' . $data[$k]['param']['id'], 'store');
 						} elseif ($data[$k]['param']['type'] == 2) {
-							$view = '';
-						}
+							$view = Dever::url('stat_view?id=' . $data[$k]['param']['id'] . '&type=store&show=2', 'store');
+						} elseif ($data[$k]['param']['type'] == 3) {
+							$view = Dever::url('order_view?type=3&order_id=' . $data[$k]['param']['id'], 'store');
+						} 
 
 						if ($view) {
 							$button = '<a href="javascript:;" onclick="read(\''.$read.'\', '.$v['id'].');jump(\''.$view.'\')"><button type="button" class="btn btn-info btn-rounded waves-effect waves-light m-b-5 layui-btn layui-btn-xs">查看</button></a>';