cqpCow há 1 ano atrás
pai
commit
1dfb76b757

+ 1 - 1
app/Http/Controllers/Api/PurchaseOrderController.php

@@ -38,7 +38,7 @@ class PurchaseOrderController extends BaseController
     {
         $service = new PurchaseOrderService();
         $userData = $request->userData->toArray();
-        list($status,$data) = $service->detail($request->all());
+        list($status,$data) = $service->detail($request->all(),$userData);
 
         if($status){
             return $this->json_return(200,'',$data);

+ 5 - 1
app/Service/EmployeeService.php

@@ -374,7 +374,11 @@ class EmployeeService extends Service
             'del_time' => time()
         ]);
 
-        RoleMenu::where('role_id',$data['id'])->update([
+        RoleMenu::where('del_time',0)->where('role_id',$data['id'])->update([
+            'del_time' => time()
+        ]);
+
+        RoleMenuButton::where('del_time',0)->where('role_id',$data['id'])->update([
             'del_time' => time()
         ]);
 

+ 3 - 1
app/Service/ProductInventoryService.php

@@ -182,7 +182,7 @@ class ProductInventoryService extends Service
         $model = ProductInventory::ATopClear($user,$data);
         $model = $model->from('product_inventory as a')
             ->join('product as b','b.id','a.product_id')
-            ->select('a.product_id','a.id','a.number','b.title','b.code','b.product_category_id','b.unit','b.bar_code','a.crt_time','a.storehouse_id')
+            ->select('a.product_id','a.id','a.number','b.title','b.code','b.product_category_id','b.unit','b.bar_code','a.crt_time','a.storehouse_id','a.top_depart_id')
             ->orderby('a.crt_time', 'desc');
         if(! empty($data['product_name'])){
             $product_name = $data['product_name'];
@@ -226,11 +226,13 @@ class ProductInventoryService extends Service
         $storehouse = Storehouse::whereIn('id',array_unique(array_column($data['data'],'storehouse_id')))
             ->pluck('title','id')
             ->toArray();
+        $depart_map = Depart::whereIn('id',array_unique(array_column($data['data'],'top_depart_id')))->pluck('title','id')->toArray();
         foreach ($data['data'] as $key => $value){
             $data['data'][$key]['unit_title'] = $basic_map[$value['unit']] ?? '';
             $data['data'][$key]['product_category_title'] = $category[$value['product_category_id']] ?? '';
             $data['data'][$key]['crt_time'] = $value['crt_time'] ? date("Y-m-d H:i:s",$value['crt_time']):'';
             $data['data'][$key]['storehouse_title'] = $storehouse[$value['storehouse_id']] ?? '';
+            $data['data'][$key]['top_depart_title'] = $depart_map[$value['top_depart_id']] ?? '';
         }
 
         return $data;

+ 19 - 17
app/Service/PurchaseOrderService.php

@@ -172,7 +172,7 @@ class PurchaseOrderService extends Service
      * @param $data
      * @return array
      */
-    public function detail($data){
+    public function detail($data,$user){
         if($this->isEmpty($data,'order_number')) return [false,'请选择数据'];
 
         $order = PurchaseOrder::where('order_number',$data['order_number'])
@@ -183,7 +183,8 @@ class PurchaseOrderService extends Service
         $order = $order->toArray();
         $order['file'] = [];
         $order['storehouse_title'] = Storehouse::where('id',$order['storehouse_id'])->value('title');
-        $order['supplier_title'] = Supplier::where('id',$order['supplier'])->value('title');
+        $supplier = Supplier::where('id',$order['supplier'])->first();
+        $order['supplier_title'] = $supplier->title;
         $order['order_type_title'] = PurchaseOrder::$order_type[$order['order_type']] ?? '';
         $order['order_type_title'] = PurchaseOrder::$order_type[$order['order_type']] ?? '';
         $order['state_title'] = PurchaseOrder::$name[$order['state']] ?? '';
@@ -232,6 +233,22 @@ class PurchaseOrderService extends Service
         //退换货信息
         $order['return_exchange'] = (new ReturnExchangeOrderService())->getDifferentAmount($order['id'],ReturnExchangeOrder::Order_type2);
 
+        //总社id
+        $top_depart_id = $user['head'] ?? [];
+        if(empty($order['state'])) {
+            //分社的采购单 供应商是总社
+            if($order['top_depart_id'] != $top_depart_id && ! empty($supplier->is_main)) {
+                $is_show_confirm = 0;
+                //总公司下的人
+                if($user['is_behind_main']) $is_show_confirm = 1;
+            }else{
+                $is_show_confirm = 1;
+            }
+        }else{
+            $is_show_confirm = 0;
+        }
+        $order['is_show_confirm'] = $is_show_confirm;
+
         return [true, $order];
     }
 
@@ -355,23 +372,8 @@ class PurchaseOrderService extends Service
         }
         //获取金额列表
         $money = (new BookingListService())->getAllAmount(array_column($data['data'],'id'), BookingList::data_type_two);
-        //总社id
-        $top_depart_id = $user['head'] ?? [];
         foreach ($data['data'] as $key => $value){
             $supplier_tmp = $supplier_map[$value['supplier']] ?? [];
-            if(empty($value['state'])) {
-                //分社的采购单 供应商是总社
-                if($value['top_depart_id'] != $top_depart_id && ! empty($supplier_tmp['is_main'])) {
-                    $is_show_confirm = 0;
-                    //总公司下的人
-                    if($user['is_behind_main']) $is_show_confirm = 1;
-                }else{
-                    $is_show_confirm = 1;
-                }
-            }else{
-                $is_show_confirm = 0;
-            }
-            $data['data'][$key]['is_show_confirm'] = $is_show_confirm;
             $data['data'][$key]['crt_time'] = $value['crt_time'] ? date("Y-m-d H:i:s",$value['crt_time']) : '';
             $data['data'][$key]['depart_name'] = $depart_map[$value['depart_id']] ?? '';
             $data['data'][$key]['crt_name'] = $emp_map[$value['crt_id']] ?? '';

+ 7 - 9
app/Service/SysMenuService.php

@@ -26,21 +26,19 @@ class SysMenuService extends Service
             $model->save();
 
             $time = time();
-            //按钮
-            SysMenuButton::where('del_time',0)->where('menu_id',$data['id'])
-                ->update(['del_time' => $time]);
             if(! empty($data['button'])){
-                $insert = [];
                 foreach ($data['button'] as $key => $value){
-                    $tmp = [];
-                    $tmp['menu_id'] = $model->id;
                     $tmp['title'] = $value['title'];
                     $tmp['sort'] = $key;
                     $tmp['func'] = $value['func'];
-                    $tmp['crt_time'] = $time;
-                    $insert[] = $tmp;
+                    if(! empty($value['id'])){
+                        SysMenuButton::where('id',$value['id'])->update($tmp);
+                    }else{
+                        $tmp['menu_id'] = $model->id;
+                        $tmp['crt_time'] = $time;
+                        SysMenuButton::insert($tmp);
+                    }
                 }
-                SysMenuButton::insert($insert);
             }
 
             DB::commit();