cqpCow 2 жил өмнө
parent
commit
0f62026f3b

+ 9 - 0
app/Http/Controllers/Api/SysMenuController.php

@@ -82,6 +82,15 @@ class SysMenuController extends BaseController
     }
 
 
+    public function menuMove(Request $request){
+        $service = new SysMenuService();
+        list($status,$data) = $service->menuMove($request->all());
 
+        if($status){
+            return $this->json_return(200,'',$data);
+        }else{
+            return $this->json_return(201,$data);
+        }
+    }
 
 }

+ 18 - 3
app/Service/DeleteOrderService.php

@@ -242,7 +242,7 @@ class DeleteOrderService extends Service
     //完工单删除
     public function delFinished($id){
         $result = DispatchSub::whereIn('id',$id)
-            ->select('id','finished_num','dispatch_quantity','out_order_no_time','process_id','dispatch_no','order_product_id','sale_orders_product_id','order_no','product_no','product_title')
+            ->select('id','finished_num','dispatch_quantity','out_order_no_time','process_id','dispatch_no','order_product_id','sale_orders_product_id','order_no','product_no','product_title','price')
             ->orderBy('id','desc')
             ->get()->toArray();
 
@@ -251,7 +251,8 @@ class DeleteOrderService extends Service
 
             date_default_timezone_set('PRC');
 
-            foreach ($result as $value){
+            $insertSqlServer = [];
+            foreach ($result as $key => $value){
                 SaleOrdersProduct::where('id',$value['sale_orders_product_id'])->decrement('finished_num', $value['finished_num']);
 
                 $process_model = new OrdersProductProcess(['channel' => date("Ymd",$value['out_order_no_time'])]);
@@ -274,6 +275,9 @@ class DeleteOrderService extends Service
                     ->update([
                         'del_time' => time()
                     ]);
+
+                $result[$key]['quantity'] = $value['finished_num'];
+                $insertSqlServer[] = $result[$key];
             }
 
             DispatchSub::whereIn('id',$id)->update([
@@ -281,7 +285,8 @@ class DeleteOrderService extends Service
                 'waste_num' => 0
             ]);
 
-            //出库单生成  TODO
+            //入库单红字生成
+            $this->insertSqlServer($insertSqlServer);
 
             DB::commit();
         }catch (\Throwable $e){
@@ -291,4 +296,14 @@ class DeleteOrderService extends Service
 
         return [true,''];
     }
+
+    //产成品入库
+    public function insertSqlServer($array){return [true, ''];
+        if(empty($array)) return [true,''];
+
+        $sqlServerModel = new FyySqlServerService();
+        list($status,$msg) = $sqlServerModel->U8Rdrecord10Save($array,1);
+
+        return [$status,$msg];
+    }
 }

+ 9 - 3
app/Service/FyySqlServerService.php

@@ -283,13 +283,19 @@ class FyySqlServerService extends Service
     }
 
     //产成品入库单保存接口以及审核
-    public function U8Rdrecord10Save($data){
+    public function U8Rdrecord10Save($data,$bredvouch = 0){
         if(! empty($this->error)) return [false,$this->error];
         date_default_timezone_set("PRC");
 
         list($bool,$msg) = $this->createOrderNumberAboutSCRK();
         if(! $bool) return [false,$msg];
 
+        if($bredvouch){
+            $cmemo = '来源:福羊羊完工操作撤回';
+        }else{
+            $cmemo = '来源:福羊羊完工操作';
+        }
+
         //数据
         $bodys = [];
         foreach ($data as $value){
@@ -327,11 +333,11 @@ class FyySqlServerService extends Service
                 "cmaker"=>"董晓磊",
                 "dnmaketime"=> date("Y-m-d"),
                 "IsExamine"=>true,
-                "bredvouch"=>"0",
+                "bredvouch"=> $bredvouch,
                 "cwhcode"=>"02",
                 "cdepcode"=>"",
                 "crdcode"=>"",
-                "cmemo"=>"来源:福羊羊完工操作",
+                "cmemo"=> $cmemo,
                 "bodys"=>$bodys
             ]
         ];

+ 41 - 0
app/Service/SysMenuService.php

@@ -90,5 +90,46 @@ class SysMenuService extends Service
         return [true,''];
     }
 
+    public function menuMove($data){
+        if($this->isEmpty($data,'id')) return [false,'ID不能为空!'];
+        if($this->isEmpty($data,'move')) return [false,'移动不能能为空!'];
 
+        //移动项
+        $model = new SysMenu();
+        $res = $model->where('id', $data['id'])->first();
+
+        if($data['move'] == 1 || $data['move'] == -1){
+            //替项目
+            $moveModel = $model->where('del_time',0)->where('parent_id',$res->parent_id);
+
+            //下移-1 上移1
+            $data['move'] == 1 ? $moveModel->orderby('sort','desc')->where('sort','<', $res['sort']) : $moveModel->orderby('sort','asc')->where('sort','>', $res['sort']);
+
+            $moveRes = $moveModel->first();
+            if(! $moveRes) return [false, '移动失败'];
+
+            $weightOne = $res->sort;
+            $weightTwo = $moveRes->sort;
+
+            $res->sort = $weightTwo;
+            $res->save();
+            $moveRes->sort = $weightOne;
+            $moveRes->save();
+        }elseif($data['move'] == 'top' || $data['move'] == 'bottom'){
+            if($data['move'] == 'top'){
+                $sort = $model->where('del_time',0)->where('parent_id',$res->parent_id)->max('sort');
+                if($sort == $res->sort) return [false,'已经置顶,移动失败!'];
+                $res->sort = $sort + 1;
+            }elseif($data['move'] == 'bottom'){
+                $sort = $model->where('del_time',0)->where('parent_id',$res->parent_id)->min('sort');
+                if($sort == $res->sort) return [false,'已经置底部,移动失败!'];
+                $res->sort = $sort - 1;
+            }
+            $res->save();
+        }else{
+            return [false, '移动失败'];
+        }
+
+        return [true,'移动成功'];
+    }
 }

+ 1 - 0
routes/api.php

@@ -33,6 +33,7 @@ Route::group(['middleware'=> ['checkLogin']],function ($route){
     $route->any('menuEdit', 'Api\SysMenuController@edit');
     $route->any('menuDel', 'Api\SysMenuController@del');
     $route->any('menuList', 'Api\SysMenuController@menuList');
+    $route->any('menuMove', 'Api\SysMenuController@menuMove');
 
     $route->any('employeeAdd', 'Api\EmployeeController@employeeAdd');
     $route->any('employeeEdit', 'Api\EmployeeController@employeeEdit');