cqpCow 1 年之前
父节点
当前提交
2b14083469
共有 3 个文件被更改,包括 244 次插入213 次删除
  1. 243 183
      app/Service/CheckService.php
  2. 0 29
      app/Service/ConstructionService.php
  3. 1 1
      app/Service/ProductInventoryService.php

+ 243 - 183
app/Service/CheckService.php

@@ -11,6 +11,7 @@ use App\Model\InvoiceOrder;
 use App\Model\InvoiceOrderInfo;
 use App\Model\InvoiceOrderInfo;
 use App\Model\OrderOperation;
 use App\Model\OrderOperation;
 use App\Model\ProductInventory;
 use App\Model\ProductInventory;
+use App\Model\ProductInventorySet;
 use App\Model\PurchaseOrder;
 use App\Model\PurchaseOrder;
 use App\Model\PurchaseOrderInfo;
 use App\Model\PurchaseOrderInfo;
 use App\Model\PurchaseOrderSpecial;
 use App\Model\PurchaseOrderSpecial;
@@ -67,6 +68,11 @@ class CheckService extends Service
     const TYPE_TWO = 2;//不通过
     const TYPE_TWO = 2;//不通过
     const TYPE_THREE = 3;//通过后驳回
     const TYPE_THREE = 3;//通过后驳回
 
 
+    //改为待审核状态 校验
+    public static $opt_1case_check = [
+        self::five => 'checkConstruction',//施工单
+    ];
+
     //改为待审核状态
     //改为待审核状态
     public static $opt_1case = [
     public static $opt_1case = [
         self::two => 'waitInvoice',//发货单
         self::two => 'waitInvoice',//发货单
@@ -133,11 +139,6 @@ class CheckService extends Service
         self::three => OrderOperation::fourteen,//采购单入库审核通过
         self::three => OrderOperation::fourteen,//采购单入库审核通过
     ];
     ];
 
 
-    public static $operation_order2 = [
-        self::four => OrderOperation::five, // 合同 安装件 合同公司完结
-        self::nine => OrderOperation::six, // 合同 安装件 合同客户完结
-    ];
-
     //旅程日志 驳回
     //旅程日志 驳回
     public static $operation_order_reject = [
     public static $operation_order_reject = [
         self::four => OrderOperation::four, //合同弃审
         self::four => OrderOperation::four, //合同弃审
@@ -147,6 +148,48 @@ class CheckService extends Service
         self::seven => OrderOperation::twenty,//采购单确认弃审
         self::seven => OrderOperation::twenty,//采购单确认弃审
     ];
     ];
 
 
+    //校验
+    public function checkConstruction($data, $user){
+        $order = Construction::where('del_time',0)
+            ->where('order_number',$data['order_number'])
+            ->first();
+        if(empty($order)) return [false,'施工单不存在或已被删除'];
+        $order = $order->toArray();
+
+        //总社id
+        $head = $user['head'] ?? [];
+        $head = $head['id'] ?? 0;
+        //分社自己的施工单 直接返回
+        if($order['top_depart_id'] != $head) return [true, ''];
+        //不校验库存
+        if($user['is_check_stock'] == ProductInventorySet::type_two)  return [true,''];
+
+        //施工单产品
+        $sub = ConstructionProductInfo::where('construction_id',$order['id'])
+            ->where('del_time',0)
+            ->get()->toArray();
+        if(empty($sub)) return [false,'施工单产品不存在或已被删除'];
+        $product_submit = $product_id = [];
+        foreach ($sub as $value){
+            $product_id[] = $value['product_id'];
+            $key = $value['product_id'] . ',' . $value['storehouse_id'];
+            if(isset($product_save[$key])){
+                $product_submit[$key] += $value['number'];
+            }else{
+                $product_submit[$key] = $value['number'];
+            }
+        }
+
+        //比较库存
+        list($status,$msg) = (new ProductInventoryService())->compareStock($user,$product_id, $product_submit, []);
+        if(! $status) return [false, $msg];
+
+        //锁定库存
+        ProductInventoryService::changeLockNumber($user,$product_submit);
+
+        return [true, ''];
+    }
+
     //改为待审核---------------------------------
     //改为待审核---------------------------------
     public function waitInvoice($data){
     public function waitInvoice($data){
         $model = InvoiceOrder::where('id',$data['id'])
         $model = InvoiceOrder::where('id',$data['id'])
@@ -160,6 +203,7 @@ class CheckService extends Service
 
 
         return [true, $model->toArray()];
         return [true, $model->toArray()];
     }
     }
+
     public function waitPurchaseConfirm($data){
     public function waitPurchaseConfirm($data){
         $model = PurchaseOrder::where('id',$data['id'])
         $model = PurchaseOrder::where('id',$data['id'])
             ->where('del_time',0)
             ->where('del_time',0)
@@ -171,6 +215,7 @@ class CheckService extends Service
         PurchaseOrder::where('id',$data['id'])->update(['state' => PurchaseOrder::STATE_ONE]);
         PurchaseOrder::where('id',$data['id'])->update(['state' => PurchaseOrder::STATE_ONE]);
         return [true, $model->toArray()];
         return [true, $model->toArray()];
     }
     }
+
     public function waitPurchase($data){
     public function waitPurchase($data){
         $model = PurchaseOrder::where('id',$data['id'])
         $model = PurchaseOrder::where('id',$data['id'])
             ->where('del_time',0)
             ->where('del_time',0)
@@ -184,6 +229,7 @@ class CheckService extends Service
 
 
         return [true, $model->toArray()];
         return [true, $model->toArray()];
     }
     }
+
     public function waitConstruction($data){
     public function waitConstruction($data){
         $model = Construction::where('id',$data['id'])
         $model = Construction::where('id',$data['id'])
             ->where('del_time',0)
             ->where('del_time',0)
@@ -197,6 +243,7 @@ class CheckService extends Service
 
 
         return [true, $model->toArray()];
         return [true, $model->toArray()];
     }
     }
+
     public function waitReturnExchange($data){
     public function waitReturnExchange($data){
         $model = ReturnExchangeOrder::where('id',$data['id'])
         $model = ReturnExchangeOrder::where('id',$data['id'])
             ->where('del_time',0)
             ->where('del_time',0)
@@ -210,6 +257,7 @@ class CheckService extends Service
 
 
         return [true, $model->toArray()];
         return [true, $model->toArray()];
     }
     }
+
     public function waitSales($data){
     public function waitSales($data){
         $model = SalesOrder::where('id', $data['id'])
         $model = SalesOrder::where('id', $data['id'])
             ->where('del_time',0)
             ->where('del_time',0)
@@ -225,6 +273,171 @@ class CheckService extends Service
     }
     }
     //改为待审核---------------------------------
     //改为待审核---------------------------------
 
 
+    //自动生成-----------------------------------
+    //总社派给分社的合同 完成生成虚拟采购单
+    public function createPurchaseOrder($order,$user){
+        //快递件
+        if($order['sales_order_type'] == SalesOrder::Order_type_two) return [true,''];
+
+        //不是总公司的合同
+        $head = $user['head'] ?? [];
+        $head = $head['id'] ?? 0; //总社id
+        if($head != $order['top_depart_id']) return [true, ''];
+
+        $see = SeeRange::where('del_time',0)
+            ->where('data_id',$order['id'])
+            ->where('data_type',SeeRange::type_seven)
+            ->where('type',SeeRange::data_three)
+            ->first();
+        if(empty($see)) return [false, '未找到指派分社信息'];
+        $depart_id = $see->param_id;//指派的分社
+
+        //总社指派给自己
+        if($depart_id == $head) return [true, ''];
+
+        //获取指派分社时候的金额
+        $fee = SalesOrderOtherFee::where('del_time',0)
+            ->where('sales_order_id',$order['id'])
+            ->first();
+        if(empty($fee)) return [false, '未找到指派分社时填写的金额'];
+        $fee = $fee->toArray();
+
+        $order_number = (new OrderNoService())->createOrderNumber(PurchaseOrderSpecial::prefix);
+        $storehouse = Storehouse::where('depart_id',$head)->value('id');
+        $product = SalesOrderProductInfo::where('del_time',0)
+            ->where('sales_order_id',$order['id'])
+            ->select('product_id','number','retail_price')
+            ->get()->toArray();
+        $product_map = $rate = [];
+        $total = 0;
+        foreach ($product as $value){
+            $total += $value['number'] * $value['retail_price'];
+            if(isset($product_map[$value['product_id']])){
+                $product_map[$value['product_id']] += $value['retail_price'] * $value['number'];
+            }else{
+                $product_map[$value['product_id']] = $value['retail_price'] * $value['number'];
+            }
+        }
+        foreach ($product_map as $key => $value){
+            $rate[$key] = sprintf("%.2f", round($value / $total, 2));
+        }
+
+        $model = new PurchaseOrderSpecial();
+        $model->order_number = $order_number;
+        $model->sales_order_id = $order['id'];
+        $model->depart_id = $head;
+        $model->top_depart_id = $head;
+        $model->crt_id = Employee::SPECIAL_ADMIN;
+        $model->purchase_id = Employee::SPECIAL_ADMIN;
+        $model->purchase_total = $fee['other_fee_1'] ?? 0;
+        $model->storehouse_id = $storehouse ?? 0;
+        $model->save();
+        if(empty($model->id)) return [false,'采购单主信息生成失败'];
+        $purchase_order_id = $model->id;
+
+        $insert = [];$product_total = 0;
+        foreach ($product as $value){
+            $rate_tmp = $rate[$value['product_id']] ?? 0;
+            $price = sprintf("%.2f", round($rate_tmp * $fee['other_fee_1'] / $value['number'], 2));
+            $product_total += $price * $value['number'];
+            $insert[] = [
+                'purchase_order_special_id' => $purchase_order_id,
+                'product_id' => $value['product_id'],
+                'order_number' => $order_number,
+                'number' => $value['number'],
+                'price' => $price,
+                'storehouse_id' => $storehouse,
+            ];
+        }
+        PurchaseOrderSpecialInfo::insert($insert);
+        PurchaseOrderSpecial::where('id',$purchase_order_id)->update(['total' => $product_total]);
+
+        return [true, ''];
+    }
+
+    //分社订货合同
+    public function createPurchaseOrderSales($order,$user){
+        //没有供应商 不创建合同
+        if(empty($order['supplier'])) return [true, ''];
+        //总公司的采购单 不创建合同
+        $head = $user['head'] ?? [];
+        $head = $head['id'] ?? 0; //总社id
+        if($head == $order['top_depart_id']) return [true, ''];
+        //分社公司的采购单 不向总供应商采购 不创建合同
+        $is_create = Supplier::where('id',$order['supplier'])->value('is_main');
+        if(empty($is_create)) return [true, ''];
+
+        $prefix = SalesOrder::$prefix[SalesOrder::Model_type_two];
+        $order_number = OrderNoService::createSalesOrderNumber($prefix);
+        $product = PurchaseOrderInfo::where('del_time',0)
+            ->where('purchase_order_id',$order['id'])
+            ->get()->toArray();
+        if(empty($product)) return [false, '采购订单产品数据不能为空'];
+
+        $time = time();
+        $depart_id = Depart::where('del_time',0)->where('parent_id',0)->where('is_main',1)->value('id');
+        $model = new SalesOrder();
+        $model->model_type = SalesOrder::Model_type_two;
+        $model->sales_order_type = SalesOrder::Order_type_one;
+        $model->order_number = $order_number;
+        $model->crt_id = $order['crt_id'];
+        $model->depart_id = $depart_id;
+        $model->top_depart_id = $depart_id;
+        $model->other_fee = $order['other_fee'];
+        $model->discount_fee = $order['discount_fee'];
+        $model->contract_fee = $order['purchase_total'];
+        $model->sign_time = $time;
+
+        $model->save();
+        $sales_order_id = $model->id;
+
+        //产品字典
+        $product_map = (new ProductService())->getProductDetail(array_column($product,'product_id'));
+
+//        //获取产品采购使用金额
+//        $map = (new ProductService())->getProductPrice(array_column($product,'product_id'));
+//        //获取部门目前使用的分社价
+//        $basic_type_id = Depart::where('id',$order['top_depart_id'])->value('basic_type_id');
+//        //产品对应的分社价
+//        $new_map = [];
+//        foreach ($map as $product_id => $value){
+//            foreach ($value as $v){
+//                if($v['basic_type_id'] == $basic_type_id && ! empty($v['price'])) $new_map[$product_id] = $v['price'];
+//            }
+//        }
+
+        $insert = [];
+        $product_total = 0;
+        foreach ($product as $value){
+            $tmp = $product_map[$value['product_id']] ?? [];
+//            $fs_price = $new_map[$value['product_id']] ?? 0;
+            //有分社价就是分社价格 没有就是零售
+//            $price = $fs_price ? $fs_price : $tmp['retail_price'];
+            $product_total += $value['price'] * $value['number'];
+            $insert[] = [
+                'sales_order_id' => $sales_order_id,
+                'product_id' => $value['product_id'],
+                'number' => $value['number'],
+                'basic_type_id' => $value['basic_type_id'],
+                'price' => $value['price'],
+                'cost' => $tmp['cost'] ?? 0,
+                'retail_price' => $tmp['retail_price'] ?? 0,
+                'final_amount' => $value['price'] * $value['number'],
+            ];
+        }
+        $bool = SalesOrderProductInfo::insert($insert);
+        if(! $bool) return [false,'合同生成失败!'];
+
+        //反写数据
+        $rate = ($product_total + $order['other_fee'] - $order['discount_fee']) / ($product_total + $order['other_fee'] ?? 1);
+        SalesOrder::where('id',$sales_order_id)->update([
+            'product_total' => $product_total,
+            'rate' =>$rate
+        ]);
+
+        return [true,''];
+    }
+    //自动生成-----------------------------------
 
 
     public function confirmInvoiceOrder($data){
     public function confirmInvoiceOrder($data){
         $model = InvoiceOrder::where('order_number',$data['order_number'])
         $model = InvoiceOrder::where('order_number',$data['order_number'])
@@ -353,93 +566,6 @@ class CheckService extends Service
         return [true,''];
         return [true,''];
     }
     }
 
 
-    //分社订货合同
-    public function createPurchaseOrderSales($order){
-        //没有供应商 不创建合同
-        if(empty($order['supplier'])) return [true, ''];
-        //总公司的采购单 不创建合同
-        $depart = Depart::where('del_time',0)
-            ->where('is_main',1)
-            ->where('parent_id',0)
-            ->first();
-        $head = 0;
-        if(! empty($depart)) $head = $depart->id;//总社
-        if($head == $order['top_depart_id']) return [true, ''];
-        //分社公司的采购单 不向总供应商采购 不创建合同
-        $is_create = Supplier::where('id',$order['supplier'])->value('is_main');
-        if(empty($is_create)) return [true, ''];
-
-        $prefix = SalesOrder::$prefix[SalesOrder::Model_type_two];
-        $order_number = OrderNoService::createSalesOrderNumber($prefix);
-        $product = PurchaseOrderInfo::where('del_time',0)
-            ->where('purchase_order_id',$order['id'])
-            ->get()->toArray();
-        if(empty($product)) return [false, '采购订单产品数据不能为空'];
-
-        $time = time();
-        $depart_id = Depart::where('del_time',0)->where('parent_id',0)->where('is_main',1)->value('id');
-        $model = new SalesOrder();
-        $model->model_type = SalesOrder::Model_type_two;
-        $model->sales_order_type = SalesOrder::Order_type_one;
-        $model->order_number = $order_number;
-        $model->crt_id = $order['crt_id'];
-        $model->depart_id = $depart_id;
-        $model->top_depart_id = $depart_id;
-        $model->other_fee = $order['other_fee'];
-        $model->discount_fee = $order['discount_fee'];
-        $model->contract_fee = $order['purchase_total'];
-        $model->sign_time = $time;
-
-        $model->save();
-        $sales_order_id = $model->id;
-
-        //产品字典
-        $product_map = (new ProductService())->getProductDetail(array_column($product,'product_id'));
-
-//        //获取产品采购使用金额
-//        $map = (new ProductService())->getProductPrice(array_column($product,'product_id'));
-//        //获取部门目前使用的分社价
-//        $basic_type_id = Depart::where('id',$order['top_depart_id'])->value('basic_type_id');
-//        //产品对应的分社价
-//        $new_map = [];
-//        foreach ($map as $product_id => $value){
-//            foreach ($value as $v){
-//                if($v['basic_type_id'] == $basic_type_id && ! empty($v['price'])) $new_map[$product_id] = $v['price'];
-//            }
-//        }
-
-        $insert = [];
-        $product_total = 0;
-        foreach ($product as $value){
-            $tmp = $product_map[$value['product_id']] ?? [];
-//            $fs_price = $new_map[$value['product_id']] ?? 0;
-            //有分社价就是分社价格 没有就是零售
-//            $price = $fs_price ? $fs_price : $tmp['retail_price'];
-            $product_total += $value['price'] * $value['number'];
-            $insert[] = [
-                'sales_order_id' => $sales_order_id,
-                'product_id' => $value['product_id'],
-                'number' => $value['number'],
-                'basic_type_id' => $value['basic_type_id'],
-                'price' => $value['price'],
-                'cost' => $tmp['cost'] ?? 0,
-                'retail_price' => $tmp['retail_price'] ?? 0,
-                'final_amount' => $value['price'] * $value['number'],
-            ];
-        }
-        $bool = SalesOrderProductInfo::insert($insert);
-        if(! $bool) return [false,'合同生成失败!'];
-
-        //反写数据
-        $rate = ($product_total + $order['other_fee'] - $order['discount_fee']) / ($product_total + $order['other_fee'] ?? 1);
-        SalesOrder::where('id',$sales_order_id)->update([
-            'product_total' => $product_total,
-            'rate' =>$rate
-        ]);
-
-        return [true,''];
-    }
-
     public function confirmConstruction($data){
     public function confirmConstruction($data){
         $model = Construction::where('order_number',$data['order_number'])
         $model = Construction::where('order_number',$data['order_number'])
             ->where('del_time',0)
             ->where('del_time',0)
@@ -632,91 +758,6 @@ class CheckService extends Service
         return [true, $model->toArray()];
         return [true, $model->toArray()];
     }
     }
 
 
-    //总社派给分社的合同 完成生成虚拟采购单
-    public function createPurchaseOrder($order){
-        //快递件
-        if($order['sales_order_type'] == SalesOrder::Order_type_two) return [true,''];
-
-        //不是总公司的合同
-        $depart = Depart::where('del_time',0)
-            ->where('is_main',1)
-            ->where('parent_id',0)
-            ->first();
-        $head = 0;
-        if(! empty($depart)) $head = $depart->id;//总社
-        if($head != $order['top_depart_id']) return [true, ''];
-
-        $see = SeeRange::where('del_time',0)
-            ->where('data_id',$order['id'])
-            ->where('data_type',SeeRange::type_seven)
-            ->where('type',SeeRange::data_three)
-            ->first();
-        if(empty($see)) return [false, '未找到指派分社信息'];
-        $depart_id = $see->param_id;//指派的分社
-
-        //总社指派给自己
-        if($depart_id == $head) return [true, ''];
-
-        //获取指派分社时候的金额
-        $fee = SalesOrderOtherFee::where('del_time',0)
-            ->where('sales_order_id',$order['id'])
-            ->first();
-        if(empty($fee)) return [false, '未找到指派分社时填写的金额'];
-        $fee = $fee->toArray();
-
-        $order_number = (new OrderNoService())->createOrderNumber(PurchaseOrderSpecial::prefix);
-        $storehouse = Storehouse::where('depart_id',$head)->value('id');
-        $product = SalesOrderProductInfo::where('del_time',0)
-            ->where('sales_order_id',$order['id'])
-            ->select('product_id','number','retail_price')
-            ->get()->toArray();
-        $product_map = $rate = [];
-        $total = 0;
-        foreach ($product as $value){
-            $total += $value['number'] * $value['retail_price'];
-            if(isset($product_map[$value['product_id']])){
-                $product_map[$value['product_id']] += $value['retail_price'] * $value['number'];
-            }else{
-                $product_map[$value['product_id']] = $value['retail_price'] * $value['number'];
-            }
-        }
-        foreach ($product_map as $key => $value){
-            $rate[$key] = sprintf("%.2f", round($value / $total, 2));
-        }
-
-        $model = new PurchaseOrderSpecial();
-        $model->order_number = $order_number;
-        $model->sales_order_id = $order['id'];
-        $model->depart_id = $head;
-        $model->top_depart_id = $head;
-        $model->crt_id = Employee::SPECIAL_ADMIN;
-        $model->purchase_id = Employee::SPECIAL_ADMIN;
-        $model->purchase_total = $fee['other_fee_1'] ?? 0;
-        $model->storehouse_id = $storehouse ?? 0;
-        $model->save();
-        if(empty($model->id)) return [false,'采购单主信息生成失败'];
-        $purchase_order_id = $model->id;
-
-        $insert = [];$product_total = 0;
-        foreach ($product as $value){
-            $rate_tmp = $rate[$value['product_id']] ?? 0;
-            $price = sprintf("%.2f", round($rate_tmp * $fee['other_fee_1'] / $value['number'], 2));
-            $product_total += $price * $value['number'];
-            $insert[] = [
-                'purchase_order_special_id' => $purchase_order_id,
-                'product_id' => $value['product_id'],
-                'order_number' => $order_number,
-                'number' => $value['number'],
-                'price' => $price,
-                'storehouse_id' => $storehouse,
-            ];
-        }
-        PurchaseOrderSpecialInfo::insert($insert);
-        PurchaseOrderSpecial::where('id',$purchase_order_id)->update(['total' => $product_total]);
-
-        return [true, ''];
-    }
-
     public function reject_sales($data){
     public function reject_sales($data){
         $model = SalesOrder::where('order_number', $data['order_number'])
         $model = SalesOrder::where('order_number', $data['order_number'])
             ->where('del_time',0)
             ->where('del_time',0)
@@ -953,27 +994,46 @@ class CheckService extends Service
         list($status,$msg) = $this->limitingSendRequestBackgExpire($data['order_number'].$data['opt_case']);
         list($status,$msg) = $this->limitingSendRequestBackgExpire($data['order_number'].$data['opt_case']);
         if(! $status) return [false,$msg];
         if(! $status) return [false,$msg];
 
 
-        //单据状态改为待审批方法
+        //走审批流 单据校验
+        $function_check = self::$opt_1case_check[$data['opt_case']] ?? '';
+        //走审批流 单据状态改为待审批方法
         $function = self::$opt_1case[$data['opt_case']] ?? '';
         $function = self::$opt_1case[$data['opt_case']] ?? '';
+
         //单据不走审批流
         //单据不走审批流
         $function2 = self::$finished[$data['opt_case']] ?? '';
         $function2 = self::$finished[$data['opt_case']] ?? '';
         try{
         try{
             DB::beginTransaction();
             DB::beginTransaction();
 
 
+            //不走审批流,更新完直接返回
             if($function2) {
             if($function2) {
                 list($bool,$msg) = $this->$function2($data);
                 list($bool,$msg) = $this->$function2($data);
                 if($bool) {
                 if($bool) {
                     $order = $msg;
                     $order = $msg;
-                    $this->createRecordAndInventoryMy($data,$user,$order);
-                    DB::commit();
-                    return [true, ''];
+
+                    list($bool,$err) = $this->createRecordAndInventoryMy($data,$user,$order);
+                    if($bool){
+                        DB::commit();
+                        return [true, ''];
+                    }else{
+                        DB::rollBack();
+                        return [false, $err];
+                    }
                 }else{
                 }else{
                     DB::rollBack();
                     DB::rollBack();
                     return [false, $msg];
                     return [false, $msg];
                 }
                 }
             }
             }
 
 
-            //从未审核变成待审核
+            //需要审批流,校验
+            if($function_check){
+                list($bool,$msg) = $this->$function_check($data, $user);
+                if(! $bool){
+                    DB::rollBack();
+                    return [false, $msg];
+                }
+            }
+
+            //需要审批流,从未审核变成待审核
             if($function){
             if($function){
                 list($bool,$msg) = $this->$function($data);
                 list($bool,$msg) = $this->$function($data);
 
 
@@ -1267,7 +1327,7 @@ class CheckService extends Service
                     }
                     }
 
 
                     if($create) {
                     if($create) {
-                        $bool = $this->$create($order);
+                        $bool = $this->$create($order,$user);
                         if(! $bool) {
                         if(! $bool) {
                             DB::rollBack();
                             DB::rollBack();
                             return [false, $msg];
                             return [false, $msg];

+ 0 - 29
app/Service/ConstructionService.php

@@ -579,8 +579,6 @@ class ConstructionService extends Service
 //            if(empty($data['construction_contact'])) return [false,'联系方式不能为空'];
 //            if(empty($data['construction_contact'])) return [false,'联系方式不能为空'];
 //            if(empty($data['address1']) || empty($data['address2'])) return [false,'地址不能为空'];
 //            if(empty($data['address1']) || empty($data['address2'])) return [false,'地址不能为空'];
         }
         }
-        //校验排班 todo
-//        if(empty($data['schedule_id']) ||empty($data['day_stamp']) || empty($data['day_start_stamp']) || empty($data['day_end_stamp'])) return [false,'排班时间信息不能为空'];
 
 
         //所属部门 以及  顶级部门
         //所属部门 以及  顶级部门
         if(empty($data['depart_id'])) {
         if(empty($data['depart_id'])) {
@@ -639,17 +637,6 @@ class ConstructionService extends Service
                 ->where('end_time', '>=', $data['start_time'])
                 ->where('end_time', '>=', $data['start_time'])
                 ->exists();
                 ->exists();
             if($bool) return [false,'合同:' . $sale['order_number'] . '在' . $start_time . '——' . $end_time . '已下施工单'];
             if($bool) return [false,'合同:' . $sale['order_number'] . '在' . $start_time . '——' . $end_time . '已下施工单'];
-
-//            $schedule = ScheduleInfo::where('del_time',0)
-//                ->where('day',$data['day_stamp'])
-//                ->where('start_time',$data['day_start_stamp'])
-//                ->where('end_time',$data['day_end_stamp'])
-//                ->where('is_use',ScheduleInfo::not_use)
-//                ->first();
-//            if(! empty($schedule)) return [false,'该时间段排班已满或不存在!'];
-//            $data['schedule_info_id'] = $schedule->id;
-//            list($status,$msg) = $this->limitingSendRequestBackg(ScheduleInfo::limit_key . $schedule->id);
-//            if(! $status) return [false,'操作频繁,请稍等!'];
         }else{
         }else{
             if(empty($data['id'])) return [false,'ID不能为空'];
             if(empty($data['id'])) return [false,'ID不能为空'];
             $bool = Construction::where('del_time',0)
             $bool = Construction::where('del_time',0)
@@ -659,22 +646,6 @@ class ConstructionService extends Service
                 ->where('end_time', '>=', $data['start_time'])
                 ->where('end_time', '>=', $data['start_time'])
                 ->exists();
                 ->exists();
             if($bool)  return [false,'合同:' . $sale['order_number'] . '在' . $start_time . '——' . $end_time . '已下施工单'];
             if($bool)  return [false,'合同:' . $sale['order_number'] . '在' . $start_time . '——' . $end_time . '已下施工单'];
-
-//            $construction = Construction::where('id',$data['id'])->first();
-//            if(empty($construction)) return [false,'施工单不存在或已被删除'];
-//            $construction = $construction->toArray();
-//            if($construction['day_stamp'] != $data['day_stamp'] || $construction['day_start_stamp'] != $data['day_start_stamp'] && $construction['day_end_stamp'] != $data['day_end_stamp']) {
-//                $schedule = ScheduleInfo::where('del_time',0)
-//                    ->where('day',$data['day_stamp'])
-//                    ->where('start_time',$data['day_start_stamp'])
-//                    ->where('end_time',$data['day_end_stamp'])
-//                    ->where('is_use',ScheduleInfo::not_use)
-//                    ->first();
-//                if(! empty($schedule)) return [false,'该时间段排班已满或不存在!'];
-//                $data['schedule_info_id'] = $schedule->id;
-//                list($status,$msg) = $this->limitingSendRequestBackg(ScheduleInfo::limit_key . $schedule->id);
-//                if(! $status) return [false,'操作频繁,请稍等!'];
-//            }
         }
         }
 
 
         return [true, [$product_submit, $product_save]];
         return [true, [$product_submit, $product_save]];

+ 1 - 1
app/Service/ProductInventoryService.php

@@ -164,7 +164,7 @@ class ProductInventoryService extends Service
             //产品名称
             //产品名称
             $pro_title = $pro[$product_id] ?? '';
             $pro_title = $pro[$product_id] ?? '';
             if(! $pro_title) return [false,'异常产品数据'];
             if(! $pro_title) return [false,'异常产品数据'];
-            if(! isset($stock[$key])) return [false,'产品:'. $pro_title .'无库存记录'];
+            if(! isset($stock[$key])) return [false,'产品:'. $pro_title .'无库存'];
             //产品库存
             //产品库存
             $stock_product = $stock[$key];
             $stock_product = $stock[$key];