Parcourir la source

Merge branch 'master' of http://101.133.135.193:20080/huhao/baoshi-was

 Conflicts:
	app/Http/Controllers/ProcurementController.php
	app/Http/Controllers/TestController.php
zhouzhendong il y a 2 ans
Parent
commit
ba0f5fb6c0
33 fichiers modifiés avec 1475 ajouts et 1176 suppressions
  1. 16 11
      app/Filters/OrderIssueFilters.php
  2. 3 0
      app/Http/ApiControllers/RejectController.php
  3. 1 1
      app/Http/Controllers/OrderIssueController.php
  4. 6 4
      app/Http/Controllers/ProcurementController.php
  5. 57 16
      app/Http/Controllers/ReceivingTaskController.php
  6. 9 0
      app/Http/Controllers/api/thirdPart/haochuang/SortingController.php
  7. 68 0
      app/Http/Controllers/api/thirdPart/hengli/OrderIssueController.php
  8. 1 1
      app/Http/Middleware/LogPostRequest.php
  9. 47 0
      app/Jobs/SendPieceOwnerJob.php
  10. 2 4
      app/Services/AllInventoryService.php
  11. 1 1
      app/Services/HandInStorageService.php
  12. 28 28
      app/Services/LogService.php
  13. 6 4
      app/Services/OrderCommodityService.php
  14. 2 1
      app/Services/OrderPackageService.php
  15. 21 0
      app/Services/OrderRejectedBillRelationService.php
  16. 17 0
      app/Services/OrderRejectingStatusService.php
  17. 1 1
      app/Services/OrderService.php
  18. 2 2
      app/Services/StorageService.php
  19. 92 27
      app/Services/WaveService.php
  20. 1 1
      app/Services/WorkOrderImageService.php
  21. 6 6
      app/Services/weight/WeightService.php
  22. 1 1
      app/WorkOrderDetail.php
  23. 8 7
      app/WorkOrderImage.php
  24. 5 0
      config/api.php
  25. 12 10
      resources/views/order/index/batchWorkOrder/index.blade.php
  26. 1 1
      resources/views/order/workOrder/index.blade.php
  27. 281 280
      resources/views/process/create.blade.php
  28. 3 1
      resources/views/procurement/finance/procurementBill.blade.php
  29. 2 0
      resources/views/procurement/procurement/index.blade.php
  30. 259 258
      resources/views/rejected/create.blade.php
  31. 154 153
      resources/views/store/deliveryAppointment/appointment.blade.php
  32. 358 356
      resources/views/store/receivingTasks/create.blade.php
  33. 4 1
      routes/api/thirdPart/hengli.php

+ 16 - 11
app/Filters/OrderIssueFilters.php

@@ -161,7 +161,7 @@ class OrderIssueFilters
 
     private function getOrderDetailQuery(): Builder
     {
-        if (!$this->orderDetailQuery){
+        if (!$this->orderDetailQuery) {
             $this->orderDetailQuery = OrderDetail::query()->select('order_id');
         }
         return $this->orderDetailQuery;
@@ -218,8 +218,8 @@ class OrderIssueFilters
         if ($this->shopQuery)
             $this->getOrderQuery()->whereIn('shop_id', $this->shopQuery);
 
-        if ($this->orderDetailQuery){
-            $this->getOrderQuery()->whereIn('order_id',$this->orderDetailQuery);
+        if ($this->orderDetailQuery) {
+            $this->getOrderQuery()->whereIn('order_id', $this->orderDetailQuery);
         }
 
         if ($this->orderQuery)
@@ -231,12 +231,16 @@ class OrderIssueFilters
         if ($this->rejectedBillQuery)
             $this->getOrderIssueRejectedBIllQuery()->whereIn('logistic_number_return', $this->rejectedBillQuery);
 
-        if ($this->orderIssueRejectedBIllQuery){
+        if ($this->orderIssueRejectedBIllQuery) {
             $this->queryBuilder->whereIn('order_issues.order_id', $this->orderIssueRejectedBIllQuery);
         }
 
         if ($this->orderIssueProcessLogQuery)
             $this->queryBuilder->whereIn('order_issues.id', $this->orderIssueProcessLogQuery);
+
+        if (!array_key_exists('created_at_start',$this->array_filter)) {
+            $this->queryBuilder->where('order_issues.created_at', '>=', "2022-11-01 00:00:00");
+        }
     }
 
     private function isSearchLike($str)
@@ -261,7 +265,7 @@ class OrderIssueFilters
     public function log_content($log_content)
     {
         $order_issue_process_log_query = OrderIssueProcessLog::query()->selectRaw('order_issue_id')->where('content', 'like', $log_content);
-        if (!array_key_exists('addtime',$this->params) ) {
+        if (!array_key_exists('addtime', $this->params)) {
             $order_issue_process_log_query->where('created_at', '>=', Carbon::now()->subDays(31));
         } else {
             $order_issue_process_log_query->where('created_at', '>=', Carbon::now()->subDays($this->params['addtime']));
@@ -276,7 +280,7 @@ class OrderIssueFilters
 
     public function is_new_rejecting($is_new_rejecting)
     {
-        $this->getOrderDetailQuery()->where('order_details.is_new_rejecting',$is_new_rejecting);
+        $this->getOrderDetailQuery()->where('order_details.is_new_rejecting', $is_new_rejecting);
     }
 
     public function logistic($logistic_id)
@@ -382,7 +386,7 @@ class OrderIssueFilters
 
     public function rejectingStatus($rejectingStatus)
     {
-        $this->getOrderDetailQuery()->where('order_details.rejecting_status',$rejectingStatus);
+        $this->getOrderDetailQuery()->where('order_details.rejecting_status', $rejectingStatus);
     }
 
     public function order_issue_ids($order_issue_ids)
@@ -427,7 +431,7 @@ class OrderIssueFilters
         $this->searchWay($order_issue_query, $sendOrderLogisticNumber, 'second_logistic_number');
         $order_issues = $order_issue_query->get();
         if (count($order_issues) > 0) {
-            $this->queryBuilder->where('order_issues.id', $order_issues->map(function ($orderIssue) {
+            $this->queryBuilder->whereIn('order_issues.id', $order_issues->map(function ($orderIssue) {
                 return $orderIssue->id;
             }));
         }
@@ -436,7 +440,7 @@ class OrderIssueFilters
             $this->searchWay($query, $sendOrderLogisticNumber, 'logistic_number');
         })->get();
         if ($orders->count() > 0) {
-            $this->queryBuilder->where('order_issues.second_client_no', $orders->map(function ($order) {
+            $this->queryBuilder->whereIn('order_issues.second_client_no', $orders->map(function ($order) {
                 return $order->client_code;
             }));
         }
@@ -507,7 +511,8 @@ class OrderIssueFilters
         }
     }
 
-    public function warehouse($warehouseIds){
-        $this->searchWay($this->getOrderQuery(),$warehouseIds,'orders.warehouse_id');
+    public function warehouse($warehouseIds)
+    {
+        $this->searchWay($this->getOrderQuery(), $warehouseIds, 'orders.warehouse_id');
     }
 }

+ 3 - 0
app/Http/ApiControllers/RejectController.php

@@ -139,6 +139,9 @@ class RejectController
 
     private function saveRejectBillItem($data,$rejectBill){
         foreach ($data['rejectItems'] as $item){
+            if ($item['quality']=='机损'){
+                $item['quality']='残次';
+            }
             $id_quality_label=QualityLabel::query()->where('name',$item['quality'])->first()['id'];
             $rejectBillItemNew = new RejectedBillItem();
             $rejectBillItemNew->id_rejected_bill=$rejectBill->id;

+ 1 - 1
app/Http/Controllers/OrderIssueController.php

@@ -80,7 +80,7 @@ class OrderIssueController extends Controller
         $orderIssueType = $this->orderIssueTypeService->getAllOrderIssueTypes();
         $qualityLabel = QualityLabel::all();
         $logistics = Logistic::all();
-        $userWorkgroup = UserWorkgroup::withTrashed()->get();
+        $userWorkgroup = UserWorkgroup::withTrashed()->orderByDesc("updated_at")->get();
         $userOwnerGroups = UserOwnerGroup::all();
         $warehouses = Warehouse::all();
         return view('order/issue/index', compact('owners', 'orderIssues', 'orderIssueType', 'qualityLabel', 'userWorkgroup', 'logistics', 'userOwnerGroups','warehouses'));

+ 6 - 4
app/Http/Controllers/ProcurementController.php

@@ -360,7 +360,7 @@ class ProcurementController extends Controller
         foreach ($procurements as $procurement){
             if (empty($procurement->procurementDeliveries))continue;
             $procurement->receive_amount=$procurement->procurementDeliveries->sum('amount');
-            $procurement->signed_at=$procurement->procurementDeliveries->first()['signed_at'] ?? '';
+            $procurement->signed_at=$procurement->procurementDeliveries->first()['signed_at']??'';
         }
         return view('procurement/finance/procurementBill',compact('suppliers','materials','owners','paginateParams','procurements'));
     }
@@ -406,7 +406,7 @@ class ProcurementController extends Controller
         }
         $procurementStatus=Procurement::status;
         $procurementType=Procurement::type;
-        $row = ['采购编号','项目','单据类型','采购公司','耗材编号','耗材','尺寸大小','特殊要求','材质规格','供应商','采购单价(元)','采购数量','销售单价(元)','送货数量','销售总价(元)','采购单状态','供应商联系方式'];
+        $row = ['采购编号','项目','单据类型','采购公司','耗材编号','耗材','尺寸大小','特殊要求','材质规格','供应商','采购单价(元)','采购数量','销售单价(元)','送货数量','销售总价(元)','采购单状态','供应商联系方式','备注'];
         $list = [];
         foreach ($procurements as $procurement){
             $list[] = [
@@ -427,6 +427,7 @@ class ProcurementController extends Controller
                 $procurement->unit_price*$procurement->amount,//销售总价=销售数量*销售单价
                 is_null($procurement->status) ? '' :$procurementStatus[$procurement->status],
                 $procurement->supplier ? $procurement->supplier->phone :'',
+                $procurement->remark,
             ];
         }
         return Export::make($row,$list,"采购管理-采购报表记录");
@@ -490,12 +491,12 @@ class ProcurementController extends Controller
         foreach ($procurements as $procurement){
             if (empty($procurement->procurementDeliveries))continue;
             $procurement->receive_amount=$procurement->procurementDeliveries->sum('receipt_amount');
-            $procurement->signed_at=$procurement->procurementDeliveries->first()['signed_at'];
+            $procurement->signed_at=$procurement->procurementDeliveries->first()['signed_at']??'';
         }
 
         $procurementStatus=Procurement::status;
         $row = ['采购编号','采购日期','接单日期','签收日期','项目名称','采购公司','供应商','耗材编号','耗材','尺寸大小','特殊要求',
-            '材质规格','采购数量','销售数量','收货数量','采购单价(元)','销售单价(元)','应收金额(元)','应付金额(元)','状态'];
+            '材质规格','备注','采购数量','销售数量','收货数量','采购单价(元)','销售单价(元)','应收金额(元)','应付金额(元)','状态'];
         $list = [];
         foreach ($procurements as $procurement){
             $list[] = [
@@ -511,6 +512,7 @@ class ProcurementController extends Controller
                 $procurement->ownerMaterial ? $procurement->ownerMaterial->size :'',
                 $procurement->ownerMaterial ? $procurement->ownerMaterial->special :'',
                 $procurement->ownerMaterial ? $procurement->ownerMaterial->specification :'',
+                $procurement->remark,
                 $procurement->quantity,
                 $procurement->amount,
                 $procurement->receive_amount ? $procurement->receive_amount : '',//收货数量

+ 57 - 16
app/Http/Controllers/ReceivingTaskController.php

@@ -61,7 +61,7 @@ class ReceivingTaskController extends Controller
         $appointment_number = $request->input('appointment_number', null);
 
         $delivery_appointment_car = DeliveryAppointmentCar::query()->with('deliveryAppointment')
-            ->where('status','!=',2)
+            ->where('status', '!=', 2)
             ->where('appointment_number', $appointment_number)
             ->orderByDesc('id')
             ->first();
@@ -73,13 +73,13 @@ class ReceivingTaskController extends Controller
         $ans_number_string = $delivery_appointment_car->deliveryAppointment->asn_number ?? '';
         $ans_numbers = array_filter(preg_split('/[,, ]+/is', $ans_number_string));
 
-        if (count($ans_numbers) === 0 && count($request->input('asn_no',[])) == 0) {
+        if (count($ans_numbers) === 0 && count($request->input('asn_no', [])) == 0) {
             return ['success' => false, 'errors' => ['appointment_number' => ['预约号没有对应的Asn号']]];
         }
 
         $asn_nos = array_unique(array_merge($ans_numbers, $request->input('asn_nos') ?? []));
 
-        if (count($asn_nos) == 0){
+        if (count($asn_nos) == 0) {
             return ['success' => false, 'errors' => ['appointment_number' => ['预约号没有对应的Asn号']]];
         }
 
@@ -95,17 +95,26 @@ class ReceivingTaskController extends Controller
             $receiving_task = $this->service->createReceivingTask($delivery_appointment_car, $request->all());
             if (!$receiving_task->id) return ['success' => false, 'message' => '生成入库单任务失败,请重新尝试'];
             $receiving_task->loadMissing(['wareHouse', 'owner', 'deliveryAppointmentCar']);
-            $this->sendPiece($request->input('owner_id'),$receiving_task->number);
+            $this->sendPiece($request->input('owner_id'), $receiving_task->number);
+            $this->sendOwnerPiece($request->input('owner_id'),$receiving_task->number);
             return ['success' => true, 'data' => $receiving_task];
         } catch (\Exception $e) {
             return ['success' => false, 'message' => '生成入库单任务失败,请重新尝试'];
         }
     }
 
-    public function sendPiece($ownerId,$taskId){
-        $url = config('api.java.base').config('api.java.piece.log.record');
-        $owner = Owner::query()->where("id",$ownerId)->first();
+    public function sendPiece($ownerId, $taskId)
+    {
+        $url = config('api.java.base') . config('api.java.piece.log.record');
+        $owner = Owner::query()->where("id", $ownerId)->first();
         $warehouseId = $owner->warehouse_id ?? null;
+        $warehouseCode = null;
+        if(!is_null($warehouseId)){
+            $warehouse = Warehouse::query()->where('id',$warehouseId)->first();
+            if(!is_null($warehouse)){
+                $warehouseCode = $warehouse['code'];
+            }
+        }
         $request = [
             "user_type" => 0,
             "job_type" => "开单",
@@ -115,18 +124,49 @@ class ReceivingTaskController extends Controller
             "message_id" => $taskId,
             "user_id" => Auth::user()['id'],
             "warehouse_id" => $warehouseId,
+            "warehouse_code" => $warehouseCode,
             "owner_id" => $ownerId,
             "item_number" => 0,
         ];
-        app('LogService')->log("开单",  "通知服务端", json_encode($request));
+        app('LogService')->log("开单", "通知服务端", json_encode($request));
+        $http = Http::post($url, $request);
+        if (!$http->successful()) {
+            app('LogService')->log("开单", "sendPiece", '发送失败:' . $http->body());
+            return;
+        }
+        $result = $http->json();
+        if ($result["code"] != 200) {
+            app('LogService')->log("开单", "sendPiece", '服务端错误:' . $http->body());
+        }
+    }
+
+    public function sendOwnerPiece($ownerId, $taskId)
+    {
+        $url = config('api.java.base') . config('api.java.piece.ownerLog.entry');
+        $owner = Owner::query()->where("id", $ownerId)->first();
+        $warehouseId = $owner->warehouse_id ?? null;
+        $request = [
+            "taskNo"=> $taskId,
+            "userId" => Auth::user()['id'],
+            "userType" => 0,
+            "jobType" => "开单",
+            "jobName" => "开单",
+            "pieceTime" => date("Y-m-d H:i:s"),
+            "messageId" => "owner_entry" . $taskId,
+            "formNumber" => 1,
+            "formScale" => 1,
+            "warehouseId" => $warehouseId,
+            "ownerId" => $ownerId,
+        ];
+        app('LogService')->log("货主开单", "通知服务端", json_encode($request));
         $http = Http::post($url, $request);
         if (!$http->successful()) {
-            app('LogService')->log("开单",  "sendPiece", '发送失败:'.$http->body());
+            app('LogService')->log("货主开单", "sendPiece", '发送失败:' . $http->body());
             return;
         }
         $result = $http->json();
         if ($result["code"] != 200) {
-            app('LogService')->log("开单",  "sendPiece", '服务端错误:'.$http->body());
+            app('LogService')->log("货主开单", "sendPiece", '服务端错误:' . $http->body());
         }
     }
 
@@ -150,17 +190,18 @@ class ReceivingTaskController extends Controller
         return ['success' => true, 'data' => $ans_numbers];
     }
 
-    public function exportExcel(Request $request, ReceivingTaskFilters $filter){
-        ini_set ('memory_limit', '1024M');
+    public function exportExcel(Request $request, ReceivingTaskFilters $filter)
+    {
+        ini_set('memory_limit', '1024M');
         $items = ReceivingTask::query()->with(['items', 'owner', 'wareHouse', 'file', 'deliveryAppointmentCar'])->filter($filter)->orderByDesc('created_at')->paginate(50);
         $json = [];
-        $row = ['收货任务号','状态','货主','ASN单号','投单时间','仓库','预约号','驾驶证号','收货类型'];
-        foreach ($items as $item){
+        $row = ['收货任务号', '状态', '货主', 'ASN单号', '投单时间', '仓库', '预约号', '驾驶证号', '收货类型'];
+        foreach ($items as $item) {
             $asnNos = [];
-            $item->items->each(function($receivingTaskItem)use(&$asnNos){
+            $item->items->each(function ($receivingTaskItem) use (&$asnNos) {
                 $asnNos[] = $receivingTaskItem->asn_no;
             });
-            $asnNos = implode(",\r\n",$asnNos);
+            $asnNos = implode(",\r\n", $asnNos);
             $json[] = [
                 $item->number,
                 $item->status,

+ 9 - 0
app/Http/Controllers/api/thirdPart/haochuang/SortingController.php

@@ -4,7 +4,9 @@ namespace App\Http\Controllers\api\thirdPart\haochuang;
 
 use App\Batch;
 use App\CommodityBarcode;
+use App\Exceptions\Exception;
 use App\Http\Controllers\Controller;
+use App\Jobs\SendPieceOwnerJob;
 use App\OracleDOCWaveDetails;
 use App\Order;
 use App\OrderBin;
@@ -191,6 +193,13 @@ SQL;
         $messageId = $batch_id.($childIndex == null ? '' : '#'.$childIndex);
         (new WaveService())->sendPiece("HC-ST-".$messageId, UserToken::getUser($token)->id ?? '0', $ownerId,
                                             $warehouseId, date("Y-m-d H:i:s"), $number);
+
+        try{
+            SendPieceOwnerJob::dispatch($batch_id,UserToken::getUser($token)->id ?? '0',$warehouseId,$ownerId,date("Y-m-d H:i:s"));
+//            (new WaveService())->sendOwnerPiece($batch_id,UserToken::getUser($token)->id ?? '0',$warehouseId,$ownerId,date("Y-m-d H:i:s"));
+        }catch (\Exception $e){
+            app('LogService')->log("二次分拣货主计件",  "上传失败", $batch_id.$warehouseId.$ownerId.date("Y-m-d H:i:s").$e->getMessage());
+        }
         return $data;
     }
 

+ 68 - 0
app/Http/Controllers/api/thirdPart/hengli/OrderIssueController.php

@@ -0,0 +1,68 @@
+<?php
+
+
+namespace App\Http\Controllers\api\thirdPart\hengli;
+
+
+use App\Http\Controllers\Controller;
+use App\OrderIssue;
+use App\OrderPackage;
+use App\Services\OrderIssueService;
+use App\Services\WorkOrderService;
+use App\WorkOrder;
+use Illuminate\Http\Request;
+
+class OrderIssueController extends Controller
+{
+    public function checkInterceptPackage(Request $request): array
+    {
+        /** @var WorkOrderService $workOrderService */
+        $workOrderService = app(WorkOrderService::class);
+        /** @var OrderIssueService $workOrderService */
+        $orderIssueService = app(OrderIssueService::class);
+        $logisticNumber = $request['expressCode'] ?? null;
+        if ($workOrderService->isIntercept($logisticNumber) || $orderIssueService->isExists($logisticNumber)) {
+            // 显示在问题件已拦截
+            $orderIssueService->intercept($logisticNumber);
+            return ['success' => 'true','data'=> true];
+        }
+        return ['success' => 'true','data'=> false];
+    }
+
+    public function interceptExpressCodes(): array
+    {
+        $interceptExpressCodes = [];
+
+        $orderIssueQuery = OrderIssue::query()
+            ->select("order_id")
+            ->where('order_issue_type_id',1)
+            ->where(function ($query) {
+                $query->whereNotIn('order_issues.final_status', ['已解决', '已归档'])
+                    ->orWhereNull('order_issues.final_status');
+            });
+
+        $orderPackages = OrderPackage::query()
+            ->select('logistic_number')
+            ->whereIn('order_id',$orderIssueQuery)
+            ->get();
+
+        foreach ($orderPackages as $orderPackage){
+            $interceptExpressCodes[] = $orderPackage->logistic_number;
+        }
+
+        $workOrderQuery = WorkOrder::query()
+            ->select("order_id")
+            ->where('order_issue_type_id',1)
+            ->where('status','!=',5);
+
+        $orderPackages = OrderPackage::query()
+            ->select('logistic_number')
+            ->whereIn('order_id',$workOrderQuery)
+            ->get();
+
+        foreach ($orderPackages as $orderPackage){
+            $interceptExpressCodes[] = $orderPackage->logistic_number;
+        }
+        return array_values(array_unique($interceptExpressCodes));
+    }
+}

+ 1 - 1
app/Http/Middleware/LogPostRequest.php

@@ -7,7 +7,7 @@ use App\Services\LogService;
 use Closure;
 use Illuminate\Support\Facades\Auth;
 
-class logsLogPostRequest
+class LogPostRequest
 {
     use ErrorPush;
     /**

+ 47 - 0
app/Jobs/SendPieceOwnerJob.php

@@ -0,0 +1,47 @@
+<?php
+
+namespace App\Jobs;
+
+use App\Services\WaveService;
+use App\WorkOrder;
+use Illuminate\Bus\Queueable;
+use Illuminate\Contracts\Queue\ShouldQueue;
+use Illuminate\Foundation\Bus\Dispatchable;
+use Illuminate\Queue\InteractsWithQueue;
+use Illuminate\Queue\SerializesModels;
+
+class SendPieceOwnerJob implements ShouldQueue
+{
+    use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;
+
+    private $batchId;
+    private $userId;
+    private $warehouseId;
+    private $ownerId;
+    private $date;
+    /**
+     * Create a new job instance.
+     *
+     * @return void
+     */
+    public function __construct($batch_id,$userId, $warehouseId, $ownerId, $date)
+    {
+        $this->batchId = $batch_id;
+        $this->userId = $userId;
+        $this->warehouseId = $warehouseId;
+        $this->ownerId = $ownerId;
+        $this->date = $date;
+    }
+
+    /**
+     * Execute the job.
+     *
+     * @return void
+     */
+    public function handle()
+    {
+        /** @var WaveService $service */
+        $service = app(WaveService::class);
+        $service->sendOwnerPiece($this->batchId,$this->userId,$this->warehouseId,$this->ownerId,$this->date);
+    }
+}

+ 2 - 4
app/Services/AllInventoryService.php

@@ -27,6 +27,7 @@ class AllInventoryService
         $SKU=$params['SKU'] ?? null;
         $ALTERNATE_SKU1=$params['ALTERNATE_SKU1'] ?? null;
         $LotAtt02_end=$params['LotAtt02_end'] ?? null;
+        $commodityName=$params['commodity_name'] ?? null;
         $sql='select * from (select result.*,rownum rn from (';
         $sql.=' select customer.descr_c as 货主,storeStatus.CUSTOMERID 客户,storeStatus.LocationID 库位, sku.SKU 产品编码, sku.ALTERNATE_SKU1 产品条码, ';
         $sql.=' sku.Descr_C 商品名称, lot.LotAtt05 属性仓, lot.LotAtt08 质量状态, lot.LotAtt02 失效日期, storeStatus.ADDTIME 创建时间, ';
@@ -57,17 +58,14 @@ class AllInventoryService
         $sql.=' ,sku.Descr_C,lot.LotAtt05,lot.LotAtt08,lot.LotAtt02,lot.LotAtt04 ';
         $sql.=' , storeStatus.QTY, storeStatus.QtyAllocated,storeStatus.CUSTOMERID,storeStatus.ADDTIME  ';
         $sql.=' )result where 1=1 ';
-//        if ($TOLocation)$sql .= " and 库位 like '".$TOLocation."' ";
-//        if ($SKU)$sql.=" and 产品编码 like '".$SKU."' ";
-//        if ($LotAtt05)$sql .=" and 属性仓 like '".$LotAtt05."' ";
         if ($TOLocation)$sql=$this->sqlSearchWay($sql,$TOLocation,"库位");
+        if ($commodityName)$sql=$this->sqlSearchWay($sql,$commodityName,"商品名称");
         if ($SKU)$sql=$this->sqlSearchWay($sql,$SKU,"产品编码");
         if ($LotAtt05)$sql=$this->sqlSearchWay($sql,$LotAtt05,"属性仓");
         if ($date_start)$sql.=" and 创建时间 > to_date('".$date_start." 00:00:00','yyyy-mm-dd hh24:mi:ss') ";
         if ($date_end)$sql.=" and 创建时间 < to_date('".$date_end." 23:59:59','yyyy-mm-dd hh24:mi:ss') ";
         if ($LotAtt02_start)$sql.=" and 失效日期 >='".$LotAtt02_start." 00:00:00' ";
         if ($LotAtt02_end)$sql.=" and 失效日期 <='".$LotAtt02_end." 23:59:59' ";
-//        if ($ALTERNATE_SKU1)$sql.=" and 产品条码 like '".$ALTERNATE_SKU1."' ";
         if ($ALTERNATE_SKU1)$sql=$this->sqlSearchWay($sql,$ALTERNATE_SKU1,"产品条码");
         if ($page&&$paginate)$sql.="  and ROWNUM<='".$page*$paginate."'";
         $sql.=' )  ';

+ 1 - 1
app/Services/HandInStorageService.php

@@ -821,7 +821,7 @@ sql;
         $sql = <<<sql
 INSERT INTO ACT_TRANSACTION_LOG VALUES(?,'IN',?,?,?,?,'ASN',?,?,?,?,?,?,?,?,TO_DATE(?,'yyyy-mm-dd hh24:mi:ss'),?,
 TO_DATE(?,'yyyy-mm-dd hh24:mi:ss'),?,0,0,0,0,TO_DATE(?,'yyyy-mm-dd hh24:mi:ss'),?,?,null,null,null,?,?,?,?,?,?,?,?,
-?,?,?,?,'1','Y',null,?,?,?,?,null,null,?,null,null)
+?,?,?,?,'1','Y',null,?,?,?,?,null,null,?,null,null,null)
 sql;
         list($trid, $max) = app('StorageService')->getTrNumber();
         list($tsid, $max) = $this->getTsNum();

+ 28 - 28
app/Services/LogService.php

@@ -18,34 +18,34 @@ class LogService
 
     static public function log($class, $method, $description, $id_user = null, $type = 'log')
     {
-        $passingMethods = config('logging.passing_methods');
-        foreach ($passingMethods as $passingMethod) {
-            if ($passingMethod == $method) return;
-        }
-        if (!$id_user) {
-            $id_user = '';
-            $user = auth()->user();
-            if ($user) $id_user = $user['id'];
-        }
-        $log = new Log([
-            'class' => $class,
-            'method' => $method,
-            'description' => $description,
-            'id_user' => $id_user,
-            'ip' => request()->ip(),
-            'type' => $type,
-        ]);
-        try {
-            Redis::LLEN('LOGS');
-        } catch (Exception $e) {
-            //redis出现异常直接保存到数据库中
-            $log->save();
-            return;
-        }
-        $date = date('Y-m-d H:i:s');
-        $log['created_at'] = $date;
-        $log['updated_at'] = $date;
-        Redis::LPUSH('LOGS', $log);
+//        $passingMethods = config('logging.passing_methods');
+//        foreach ($passingMethods as $passingMethod) {
+//            if ($passingMethod == $method) return;
+//        }
+//        if (!$id_user) {
+//            $id_user = '';
+//            $user = auth()->user();
+//            if ($user) $id_user = $user['id'];
+//        }
+//        $log = new Log([
+//            'class' => $class,
+//            'method' => $method,
+//            'description' => $description,
+//            'id_user' => $id_user,
+//            'ip' => request()->ip(),
+//            'type' => $type,
+//        ]);
+//        try {
+//            Redis::LLEN('LOGS');
+//        } catch (Exception $e) {
+//            //redis出现异常直接保存到数据库中
+//            $log->save();
+//            return;
+//        }
+//        $date = date('Y-m-d H:i:s');
+//        $log['created_at'] = $date;
+//        $log['updated_at'] = $date;
+//        Redis::LPUSH('LOGS', $log);
     }
 
     public static function syncRedisLogs()

+ 6 - 4
app/Services/OrderCommodityService.php

@@ -3,10 +3,12 @@
 namespace App\Services;
 
 use App\Batch;
+use App\Log;
 use App\OracleActAllocationDetails;
 use App\Order;
 use App\OrderCommodity;
 use App\OrderPackage;
+use App\Owner;
 use App\Services\common\BatchUpdateService;
 use App\Services\common\DataHandlerService;
 use Carbon\Carbon;
@@ -24,11 +26,8 @@ class OrderCommodityService
         if(count($innerParams)==0)return false;
         try {
             $bool = OrderCommodity::query()->insert($innerParams);
-            if ($bool) app('LogService')->log(__METHOD__, __FUNCTION__, '批量添加 OrderCommodities SUCCESS' . ' || ' . count($innerParams) . ' || ' . json_encode($innerParams));
-            else app('LogService')->log(__METHOD__, __FUNCTION__, '批量添加 OrderCommodities FAULT' . ' || ' . count($innerParams) . ' || ' . json_encode($innerParams));
             return $bool;
         } catch (\Exception $e) {
-            app('LogService')->log(__METHOD__, __FUNCTION__, '批量添加 OrderCommodities ERROR'. ' || ' . count($innerParams) . ' || ' . json_encode($innerParams).' || '.json_encode($e->getMessage()).' || '.json_encode($e->getTraceAsString()));
             return false;
         }
     }
@@ -114,7 +113,7 @@ class OrderCommodityService
         if(count($delete_ids)==0)return;
         $this->deleteByIds($delete_ids);
 //        OrderCommodity::query()->whereIn('id',$delete_ids)->delete();
-        app('LogService')->log(__METHOD__,__FUNCTION__,"delete OrderCommodity ".json_encode($delete_ids));
+//        app('LogService')->log(__METHOD__,__FUNCTION__,"delete OrderCommodity ".json_encode($delete_ids));
         unset($delete_ids);
     }
 
@@ -206,6 +205,9 @@ class OrderCommodityService
             $order = $orderCommodity->order;
             $owner  = $dataHandlerService->getKeyValue(['id'=>$order->owner_id ?? ''],$owner_id_maps);
             $sku =  $orderCommodity->commodity->sku ?? '';
+            if($owner == null){
+                $owner = App(OwnerService::class)->first(['id'=>$order->owner_id]);
+            }
             $key = "order_{$order->code}_owner_code_{$owner['code']}_sku_{ $sku}_location_{$orderCommodity->location}_amount_{$orderCommodity->amount}";
             if(empty($map[$key]))$map[$key]=[];
             $map[$key][]  =[

+ 2 - 1
app/Services/OrderPackageService.php

@@ -199,7 +199,8 @@ class OrderPackageService
             try {
                 $inner_array = array_chunk($inner_params, 200);
                 foreach ($inner_array as $params) {
-                    $bool = $this->insert($params);
+//                    OrderPackage::query()->insert($params);
+                    $this->insert($params);
                 }
             } catch (\Exception $e) {
             }

+ 21 - 0
app/Services/OrderRejectedBillRelationService.php

@@ -9,6 +9,7 @@ use App\OrderIssue;
 use App\OrderIssueRejectedBill;
 use App\OrderPackage;
 use App\RejectedBill;
+use Illuminate\Support\Facades\Http;
 
 class OrderRejectedBillRelationService
 {
@@ -36,9 +37,28 @@ class OrderRejectedBillRelationService
                 );
             }
         }
+        $this->sendSWMSMessage($order);
         $this->service->syncRejectingStatus($order);
     }
 
+    public function sendSWMSMessage($order){
+        $items = OrderIssueRejectedBill::query()->select("logistic_number_return")
+            ->whereNotNull("logistic_number_return")
+            ->where("order_id",$order->id)->get();
+        if(count($items) == 0){
+            return;
+        }
+        $logisticNumbers = $items->map(function($item){
+            return $item->logistic_number_return;
+        })->toArray();
+        $url = config('api.java.base').config('api.java.reject.modifyStatus');
+        $request = [
+            "returnNos" => $logisticNumbers
+        ];
+        app('LogService')->log("通知问题件关联",  "modifyStatus", '推送:'.json_encode($request));
+        Http::post($url,$request);
+    }
+
 
     private function getOrder(RejectedBill $rejectedBill)
     {
@@ -84,6 +104,7 @@ class OrderRejectedBillRelationService
         }
         OrderIssueRejectedBill::query()->where("order_id",$order->id)->update(['order_issue_id'=>$order_issue->id ?? null]);
         $this->service->syncRejectingStatus($order);
+        $this->sendSWMSMessage($order);
     }
 
     private function getOrderPackagesLogisticNumbers(Order $order): array

+ 17 - 0
app/Services/OrderRejectingStatusService.php

@@ -115,6 +115,7 @@ class OrderRejectingStatusService
     {
         //未退回,差异退回,全部退回,超量退回,部分退回
         if (count($rejected_bill_item_map) == 0) return "未退回";
+
         $equal = 0;     // 相等sku
         $portion = 0;   // 相等的sku
         foreach ($rejected_bill_item_map as $key => $map) {
@@ -132,6 +133,22 @@ class OrderRejectingStatusService
         if ($portion > 0) return "部分退回";
         if (count(array_diff_key($order_commodity_map, $rejected_bill_item_map)) > 0) return '部分退回';
         if (count(array_diff_key($rejected_bill_item_map, $order_commodity_map)) > 0) return '差异退回';
+        if($this->isDiffReject($rejected_bill_item_map)) return '差异退回';
         return "无";
     }
+
+    public function isDiffReject(array $rejected_bill_item_map): bool
+    {
+        // 只要有残次 正品 未知 都属于 差异退回
+        $count = 0;
+        foreach ($rejected_bill_item_map as $key => $map) {
+            if( (isset($map['残次']) && $map['残次'] >0)
+                || (isset($map['正品']) && $map['正品'] > 0 )
+                || (isset($map['未知']) && $map['未知'] > 0 )){
+                $count ++ ;
+            }
+        }
+        return $count != 0;
+    }
+
 }

+ 1 - 1
app/Services/OrderService.php

@@ -697,9 +697,9 @@ SQL;
     public function syncOrder(&$orderHeaders)
     {
         $this->syncOrderByWMSOrderHeaders($orderHeaders);
-        app("OrderCommodityService")->syncOrderCommodity($orderHeaders);
         app('OrderPackageService')->syncOrderPackage($orderHeaders);
         app("OrderPackageCommoditiesService")->syncOrderPackageCommodities($orderHeaders);
+        app("OrderCommodityService")->syncOrderCommodity($orderHeaders);
         $this->pushQueue($orderHeaders);
         unset($orderHeaders);
     }

+ 2 - 2
app/Services/StorageService.php

@@ -476,7 +476,7 @@ sql;
             $sql = <<<sql
 INSERT INTO ACT_TRANSACTION_LOG VALUES(?,'PA',?,?,?,?,'ASN',?,?,?,?,?,?,?,?,TO_DATE(?,'yyyy-mm-dd hh24:mi:ss'),?,
 TO_DATE(?,'yyyy-mm-dd hh24:mi:ss'),?,0,0,0,0,TO_DATE(?,'yyyy-mm-dd hh24:mi:ss'),?,?,null,null,null,'*',?,?,?,?,?,?,?,
-?,?,?,?,?,'N',null,?,?,?,?,null,null,?,null,null)
+?,?,?,?,?,'N',null,?,?,?,?,null,null,?,null,null,null)
 sql;
             list($trid,$max) = $this->getTrNumber();
             $db->insert(DB::raw($sql),[
@@ -544,7 +544,7 @@ SQL;
         $sql = <<<sql
 INSERT INTO ACT_TRANSACTION_LOG VALUES(?,'99',?,'*',?,'0','ASN','*','*','*','*','*','0','0','99',TO_DATE(?,'yyyy-mm-dd hh24:mi:ss'),?,
 TO_DATE(?,'yyyy-mm-dd hh24:mi:ss'),?,0,0,0,0,TO_DATE(?,'yyyy-mm-dd hh24:mi:ss'),?,'*',null,null,null,'*','*',?,'*','*','0','0','*',
-null,null,null,null,null,null,null,?,?,?,?,null,null,?,null,null)
+null,null,null,null,null,null,null,?,?,?,?,null,null,?,null,null,null)
 sql;
         list($trid,$max) = $this->getTrNumber();
         DB::connection("oracle")->insert(DB::raw($sql),[

+ 92 - 27
app/Services/WaveService.php

@@ -4,8 +4,15 @@
 namespace App\Services;
 
 
+use App\OracleBasSKU;
+use App\OracleDOCOrderDetail;
+use App\OracleDOCOrderHeader;
+use App\OracleDOCWaveDetails;
 use App\OracleDOCWaveHeader;
+use App\Owner;
+use App\Warehouse;
 use Illuminate\Http\Request;
+use Illuminate\Support\Facades\Auth;
 use Illuminate\Support\Facades\DB;
 use App\Traits\ServiceAppAop;
 use Illuminate\Support\Facades\Http;
@@ -14,7 +21,9 @@ use Illuminate\Support\Facades\Http;
 class WaveService
 {
     use ServiceAppAop;
-    protected $modelClass=Wave::class;
+
+    protected $modelClass = Wave::class;
+
     public function queryWave(Request $request)
     {
         $sql = $this->createSqlByCondition($request);
@@ -54,6 +63,7 @@ class WaveService
         $sql .= " left join BAS_CODES codes on wave_header.WaveStatus = codes.CODE and codes.codeId = 'SO_STS'";
         return $sql;
     }
+
     public function cancelPrint($ids)
     {
         $meg = ['success' => false, 'fail_info' => null];
@@ -99,7 +109,7 @@ class WaveService
             $childSql .= " and addTime < '" . $end_time . " 23:59:59'";
         }
         if ($wave_num) {
-            $childSql .= " and waveNo like '" .trim($wave_num). "'";
+            $childSql .= " and waveNo like '" . trim($wave_num) . "'";
         }
         if ($wave_status) {
             $childSql .= " and waveStatus = " . $wave_status;
@@ -126,7 +136,8 @@ class WaveService
         return ['page' => $page, 'paginate' => $paginate, 'start_time' => $start_time, 'end_time' => $end_time, 'wave_num' => $wave_num, 'wave_status' => $wave_status,];
     }
 
-    public function getSql(Request $request){
+    public function getSql(Request $request)
+    {
         $childSql = "( select row_number() over (order by addTime desc ) nums,UdfPrintFlag2,WaveNo,WaveStatus,Descr,CarrierID,WaveDispatchID,addWho,addTime,WaveRule,UserDefine1,UserDefine2 from doc_wave_header where 1=1 ";
         if ($request->input('start_time')) {
             $childSql .= " and addTime > '" . $request->input('start_time') . " 00:00:00' ";
@@ -137,17 +148,17 @@ class WaveService
         if ($request->input('wave_num')) {
             $wave_num = $request->input('wave_num');
             $wave_num = $this->getWaveNoString($wave_num);
-            if(strpos($wave_num,',')){
-                $childSql .= " and WaveNo in (" .$wave_num . ") ";
-            }else{
-                $childSql .= " and WaveNo like '" .$wave_num . "' ";
+            if (strpos($wave_num, ',')) {
+                $childSql .= " and WaveNo in (" . $wave_num . ") ";
+            } else {
+                $childSql .= " and WaveNo like '" . $wave_num . "' ";
             }
         }
         if ($request->input('wave_status')) {
             $childSql .= " and WaveStatus =  '" . $request->input('wave_status') . "' ";
         }
-        $childSql.=' order by addTime';
-        $childSql =  $childSql . ") wave_header ";
+        $childSql .= ' order by addTime';
+        $childSql = $childSql . ") wave_header ";
         $sql = ' select wave_header.WaveNo,' .
             'wave_header.WaveStatus,' .
             'codes.CODENAME_C,' .
@@ -159,7 +170,7 @@ class WaveService
             'wave_header.UserDefine1,' .
             'wave_header.UserDefine2,' .
             'wave_header.WaveDispatchID,' .
-            'wave_header.UdfPrintFlag2 from ' ;
+            'wave_header.UdfPrintFlag2 from ';
         $sql .= $childSql;
         $sql .= " left join BAS_CUSTOMER  customer on  customer.CustomerID  = wave_header.CarrierID and customer.CUSTOMER_TYPE = 'CA'";
         $sql .= " left join BAS_CODES codes on wave_header.WaveStatus = codes.CODE and codes.codeId = 'SO_STS'";
@@ -190,26 +201,28 @@ class WaveService
         ]];
         return $arr;
     }
-    public function getWaveNoString($wave_num){
+
+    public function getWaveNoString($wave_num)
+    {
         $sqlString = '';
-        if(!$wave_num){
+        if (!$wave_num) {
             return $sqlString;
         }
-        if(strpos($wave_num,"%")){
+        if (strpos($wave_num, "%")) {
             return $wave_num;
         }
-        if(strpos($wave_num,",") ){
+        if (strpos($wave_num, ",")) {
 
-            $arr = explode(',',$wave_num);
+            $arr = explode(',', $wave_num);
             $let = count($arr);
-            for($i=0;$i<$let;$i++){
-                $arr[$i] = "'".$arr[$i]."'";
+            for ($i = 0; $i < $let; $i++) {
+                $arr[$i] = "'" . $arr[$i] . "'";
             }
-            $sqlString = implode(",",$arr);
+            $sqlString = implode(",", $arr);
             return $sqlString;
         }
-        if($wave_num){
-            $sqlString = "'".$wave_num."'";
+        if ($wave_num) {
+            $sqlString = "'" . $wave_num . "'";
         }
         return $sqlString;
     }
@@ -220,30 +233,82 @@ class WaveService
         return $count == 0;
     }
 
-    public function sendPiece($messageId, $userId, $ownerId, $warehouseId, $date, $number) {
-        $url = config('api.java.base').config('api.java.piece.log.record');
+    public function sendPiece($messageId, $userId, $ownerId, $warehouseId, $date, $number)
+    {
+        $url = config('api.java.base') . config('api.java.piece.log.record');
+        $warehouse = Warehouse::query()->where('id',$warehouseId)->first();
         $request = [
             "user_type" => 0,
             "job_type" => "二次分拣",
             "job_name" => "二次分拣",
-            "form_number" => 1,
-
             "piece_time" => $date,
             "message_id" => $messageId,
             "user_id" => $userId,
             "warehouse_id" => $warehouseId,
+            "warehouse_code" => $warehouse['code'],
             "owner_id" => $ownerId,
             "item_number" => $number,
         ];
-        app('LogService')->log("二次分拣计件",  "通知服务端", json_encode($request));
+        app('LogService')->log("二次分拣计件", "通知服务端", json_encode($request));
         $http = Http::post($url, $request);
         if (!$http->successful()) {
-            app('LogService')->log("二次分拣计件",  "sendPiece", '发送失败:'.$http->body());
+            app('LogService')->log("二次分拣计件", "sendPiece", '发送失败:' . $http->body());
             return;
         }
         $result = $http->json();
         if ($result["code"] != 200) {
-            app('LogService')->log("二次分拣计件",  "sendPiece", '服务端错误:'.$http->body());
+            app('LogService')->log("二次分拣计件", "sendPiece", '服务端错误:' . $http->body());
         }
     }
+
+
+    public function sendOwnerPiece($batch_id,$userId, $warehouseId, $ownerId, $date)
+    {
+        $url = config('api.java.base') . config('api.java.piece.ownerLog.delivery');
+        $waveQuery = OracleDOCWaveDetails::query()->select("orderNo")->where("waveNo", $batch_id);
+        $warehouse = Warehouse::query()->where('id',$warehouseId)->first();
+        $items = OracleDOCOrderDetail::query()->whereIn("orderNo", $waveQuery)->get();
+        if (count($items) == 0) {
+            app('LogService')->log("二次分拣货主计件", "batch_id details is null", $batch_id);
+            return;
+        }
+        foreach ($items as $orderDetail) {
+            $basSku = OracleBasSKU::query()->where("CUSTOMERID", $orderDetail->customerid)->where("sku", $orderDetail->sku)->first();
+            if (null == $basSku) {
+                app('LogService')->log("二次分拣货主计件", "CUSTOMERID sku is null", $orderDetail->customerid . $orderDetail->sku);
+                continue;
+            }
+            $orderHeader = OracleDOCOrderHeader::query()->where('orderNo',$orderDetail->orderno)->first();
+
+            $request = [
+                "messageId" => $batch_id . $orderDetail->orderno . $orderDetail->sku . $orderDetail->orderlineno,
+                "deliveryOrderCode" => $orderDetail->orderno,
+                "sku" => $orderDetail->sku,
+                "warehouseId" => $warehouseId,
+                "warehouse_code" => $warehouse['code'],
+                "warehouseCode" => $warehouse['code'],
+                'expressCode' => $orderHeader['soreference5'],
+                "ownerId" => $ownerId,
+                "userId" => $userId,
+                "userType" => 0,
+                "jobType" => "二次分拣",
+                "jobName" => "二次分拣",
+                "pieceTime" => $date,
+                "number" => $orderDetail->qtyordered_each ?? 0,
+                "itemNumber" => $orderDetail->qtyordered_each,
+                "commodityName" => $basSku->descr_c
+            ];
+            app('LogService')->log("二次分拣货主计件", "通知服务端", json_encode($request));
+            $http = Http::post($url, $request);
+            if (!$http->successful()) {
+                app('LogService')->log("二次分拣货主计件", "sendPiece", '发送失败:' . $http->body());
+                return;
+            }
+            $result = $http->json();
+            if ($result["code"] != 200) {
+                app('LogService')->log("二次分拣货主计件", "sendPiece", '服务端错误:' . $http->body());
+            }
+        }
+    }
+
 }

+ 1 - 1
app/Services/WorkOrderImageService.php

@@ -36,7 +36,7 @@ class WorkOrderImageService
         $count = $detail->images()->where('type', 1)->count();
         /** @var WorkOrderImage $workOrderImage */
         $workOrderImage = $detail->images()->create(['type' => 1, 'number' => ++$count,'work_order_id'=> $detail->work_order_id]);
-        $workOrderImage->saveFile($image);
+//        $workOrderImage->saveFile($image);
     }
 
     /**

+ 6 - 6
app/Services/weight/WeightService.php

@@ -93,12 +93,12 @@ class WeightService
             return $this->getUpdatePackageMessage($orderPackage);
         }
 
-        // 7、处理波次信息 推送至WMS称重信息
-        try {
-            $this->activityWaveNoProcessing($orderPackage);
-        } catch (\Exception $e) {
-            return $this->getWeightMessage($orderPackage, $e);
-        }
+//        // 7、处理波次信息 推送至WMS称重信息
+//        try {
+//            $this->activityWaveNoProcessing($orderPackage);
+//        } catch (\Exception $e) {
+//            return $this->getWeightMessage($orderPackage, $e);
+//        }
 
         return $this->getSuccessMessage($params, $orderPackage);
     }

+ 1 - 1
app/WorkOrderDetail.php

@@ -32,7 +32,7 @@ class WorkOrderDetail extends Model
         'tag',                      // 标记当前工单是否为历史标记
         'receive_address',          // 收方信息
         'return_address',           // 退回单 寄件人地址
-        'return_phone',             // 退回单 寄件人联系号码
+        'return_phone',              // 退回单 寄件人联系号码
         'return_name',              // 退回单 寄件人姓名
         'logistic_handle_tag',      // 承运商在处理标记
 

+ 8 - 7
app/WorkOrderImage.php

@@ -126,13 +126,14 @@ class WorkOrderImage extends Model
 
     public function getStorageDirPath(): string
     {
-        $path = ['app','public','files','workOrder'];
-        $path = join(DIRECTORY_SEPARATOR,$path);
-        $dirPath = storage_path($path);
-        if (!file_exists($dirPath)) {
-            mkdir($dirPath);
-        }
-        return $dirPath.DIRECTORY_SEPARATOR;
+//        $path = ['app','public','files','workOrder'];
+//        $path = join(DIRECTORY_SEPARATOR,$path);
+//        $dirPath = storage_path($path);
+//        if (!file_exists($dirPath)) {
+//            mkdir($dirPath);
+//        }
+//        return $dirPath.DIRECTORY_SEPARATOR;
+        return "";
     }
 
     public function updateFile($image)

+ 5 - 0
config/api.php

@@ -109,11 +109,16 @@ return [
         "piece" => [
             "log" => [
                 "record" => "api/piece/user/record/create",
+            ],
+            'ownerLog' => [
+                "delivery" => "api/piece/dailyReport/owner/delivery/add",
+                "entry" => "api/piece/dailyReport/owner/entry/add",
             ]
         ],
         "reject" => [
             "syncOrderIssue" => "api/order/packageManage/modifyOrderIssues",
             "syncWorkOrder" => "api/order/packageManage/modifyWorkOrders",
+            "modifyStatus" => "api/reject/rejectHead/modifyStatus"
         ]
     ]
 ];

+ 12 - 10
resources/views/order/index/batchWorkOrder/index.blade.php

@@ -471,6 +471,7 @@
                     });
                 },
                 expressAbnormal() {
+
                     let {expressAbnormalData, remark} = this;
                     let message = '';
                     this.waitingTempTip("处理中");
@@ -487,16 +488,17 @@
                             data.append('commodities[]', JSON.stringify({logistic_number: e.logistic_number}));
                         })
                         let dealImages = this.getImages(expressAbnormal.dealImages);
-                        this.setFormDataImagePrefix(data, 'dealImages', dealImages);
-                        this.syncExpressAbnormal(data).then(res => {
-                            if (i === (expressAbnormalData.length - 1)) {
-                                this.cancelWaitingTempTip();
-                                this.cancelSubData();
-                            }
-                            this.successTempTip(`${expressAbnormal.order_no}创建完成`);
-                        }).catch(err => {
-                            message += err + '\\n';
-                        });
+                        console.log(data);
+                        // this.setFormDataImagePrefix(data, 'dealImages', dealImages);
+                        // this.syncExpressAbnormal(data).then(res => {
+                        //     if (i === (expressAbnormalData.length - 1)) {
+                        //         this.cancelWaitingTempTip();
+                        //         this.cancelSubData();
+                        //     }
+                        //     this.successTempTip(`${expressAbnormal.order_no}创建完成`);
+                        // }).catch(err => {
+                        //     message += err + '\\n';
+                        // });
                     }
                 },
                 syncExpressAbnormal(data) {

+ 1 - 1
resources/views/order/workOrder/index.blade.php

@@ -435,7 +435,7 @@
                                     </td>
                                 @endcan
                                 <td>
-                                    <span v-text="item.order.warehouse ? item.order.warehouse.name : ''"></span>
+{{--                                    <span v-text="item.order.warehouse ? item.order.warehouse.name : ''"></span>--}}
                                 </td>
                                 @can('订单管理-工单处理-宝时编辑')
                                     <td>

+ 281 - 280
resources/views/process/create.blade.php

@@ -2,286 +2,287 @@
 @section('title')录入-二次加工管理@endsection
 @section('content')
     <div class="container-fluid d-none" id="list">
-        <div class="card col-md-8 offset-md-2">
-            <div class="card-body">
-                <div class="modal fade" id="pasteData" tabindex="-1" role="dialog" aria-labelledby="pasteDataTitle" aria-hidden="true">
-                    <div class="modal-dialog modal-dialog-centered modal-lg" role="document">
-                        <div class="modal-content">
-                            <div class="modal-header">
-                                <div class="row modal-title font-weight-bold w-100 text-nowrap ml-1 noselect" id="pasteDataTitle">
-                                    <span v-for="(row,i) in rows" draggable="true"
-                                          @drop="drop($event,i)" @dragover="dragover($event)" @dragstart="dragstart($event,i)"
-                                          :class="row=='货主' || row=='单据' || row=='品名' || row=='数量' || row=='SKU' ? 'text-danger' : ''"
-                                          class="col-2 border" style="cursor: move">@{{ row }}</span>
-                                </div>
-                            </div>
-                            <div class="modal-body" style="text-align:center">
-                                <button type="button" id="popover" class="btn btn-danger"
-                                        data-container="body" data-toggle="popover" data-placement="bottom"
-                                        :data-content="popoverContent" data-html="true">
-                                    部分数据导入失败
-                                </button>
-                                <textarea class="w-100" style="height: 400px;" id="pasteDataText" v-model="pasteData" @keydown.tab="forbidTab($event)" @keyup.tab="replaceSpacing()"
-                                placeholder="内容可为EXCEL复制,也可手动输入使用“TAB”缩进符区分列,请注意表头顺序,可拖拽表头字段调整顺序,以该顺序为准"
-                                ></textarea>
-                            </div>
-                            <div class="modal-footer">
-                                <button class="btn btn-dark" @click="importPasteData()">开始导入</button>
-                            </div>
-                        </div>
-                    </div>
-                </div>
-                <div class="row">
-                    <div class="col-6  rounded mb-2 border" style="background: #efe3d9;">
-                        <div class="form-group row mt-2" v-if="!is_hide">
-                            <label class="col-2 text-right mt-2">原料单据</label>
-                            <input class="form-control col-6" v-model="process.wms_code">&nbsp;&nbsp;&nbsp;
-                            <button class="btn btn-info btn-sm col-2"  type="button" @click="addProcessContent(false)"> 新增库单据</button>
-                            <button class="btn btn-sm btn-dark col-1 ml-1"
-                                    @click="showPasteDataModal()"><small>外部导入</small></button>
-                        </div>
-                        <div class="form-group row" v-if="!is_hide">
-                            <div class="col-10 offset-1 pl-0 pt-2 border rounded bg-light">
-                                <div class="row pt-2 small"><label class="col-3 text-right" >单据号</label>
-                                    <b class="col-8" v-if="processContents.length>0 && processContents[0].addBtnShow && !processContents[0].type">@{{ processContents[0].wms_code }}</b></div> <!---->
-                                <div class="row pt-2" v-if="processContents.length>0 && processContents[0].addBtnShow && !processContents[0].type">
-                                    <span class="col-12 text-center text-muted small">双击选择商品:
-                                        <button class="btn btn-sm btn-outline-info ml-1 mt-0" style="transform: scale(0.8)"
-                                            @click="addAll(processContents[0])"
-                                            >添加所有</button>
-                                    </span>
-                                    <span class=" col-11 offset-1 input-group" style=" border-radius: 5px; opacity: 1.5; text-align: center;">
-                                        <ul onselectstart="return false;" class="list-group tooltipTarget" style="width: 100%; max-height: 130px; overflow-y: scroll;">
-                                            <li  v-for="commodity in processContents[0].commodities" :id="commodity.id"  :style="[{'background-color':processContents[0].commodity_id==commodity.id ? '#9fcdff':'' },{'text-decoration':commodityIds.includes(process.wms_code+'_'+commodity.id+'_false')? 'line-through red' : ''}]"
-                                                @dblclick="selectedCommodity(commodity,processContents[0].wms_code,false)" class="list-group-item list-group-item-action p-0 m-0">
-                                                <div class="form-inline" style="cursor: default; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;">
-                                                    <small :title="commodity.name" class="text-left text-primary col-6 tooltipTarget"  style="overflow: hidden;">@{{ commodity.name }}</small>
-                                                    <small class="text-left  col-6"><span v-for="barcode in commodity.barcodes">@{{ barcode.code }}&nbsp;&nbsp;&nbsp;</span></small>
-                                                </div>
-                                            </li>
-                                        </ul>
-                                    </span>
-                                </div>
-                                <div class="row pt-2 small"><label class="col-3  text-right">商品名</label>
-                                    <input v-if="processContents.length>0 && processContents[0].addBtnShow && !processContents[0].type" class="form-control form-control-sm col-8" @change="update_commodity_name(processContents[0])" v-model="processContents[0].commodity_name">
-                                </div>
-                                <div class="row pt-2 small"><label class="col-3  text-right">条码</label>
-                                    <input v-if="processContents.length>0 && processContents[0].addBtnShow && !processContents[0].type" class="form-control form-control-sm col-8" @change="update_commodity_barcode(processContents[0],$event)" :value="processContents[0].commodity_barcode ? processContents[0].commodity_barcode :
-                                    (processContents[0].commodity_barcodes[0] ? processContents[0].commodity_barcodes[0].code :'')">
-                                </div>
-                                <div class="row pt-2 small"><label class="col-3  text-right">SKU</label>
-                                    <input v-if="processContents.length>0 && processContents[0].addBtnShow && !processContents[0].type" class="form-control form-control-sm col-8" @change="update_commodity_sku(processContents[0])" v-model="processContents[0].commodity_sku">
-                                </div>
-                                <div class="row pt-2 small"><label class="col-3  text-right">单据类型</label>
-                                    <select v-if="processContents.length>0 && processContents[0].addBtnShow && !processContents[0].type"
-                                            v-model="processContents[0].bill_type"  class="col-8 form-control form-control-sm">
-                                        <option value="移库单">移库单</option>
-                                        <option value="入库单">入库单</option>
-                                        <option value="出库单">出库单</option>
-                                    </select></div>
-                                <div class="row pt-2 small"><label class="col-3  text-right">数量</label>
-                                    <input v-if="processContents.length>0 && processContents[0].addBtnShow && !processContents[0].type" v-model="processContents[0].amount" type="text" class="form-control form-control-sm col-8">
-                                </div>
-                                <div class="col-8 offset-2 pt-2 pb-2">
-                                    <input type="button" v-if="processContents.length>0 && processContents[0].addBtnShow && !processContents[0].type"
-                                           @click="confirmStore(processContents[0].wms_code,processContents[0].commodity_id,processContents[0].amount,processContents[0].bill_type,false)"
-                                           value="确定新增" class="btn btn-primary btn-sm form-control form-control-sm">
-                                </div>
-                                <div class="col-8 offset-2 pt-2 pb-2">
-                                    <input v-if="processContents.length>0 && processContents[0].addBtnShow && !processContents[0].type" type="button" @click="deleteProcessContent(processContents[0].wms_code,processContents[0].commodity_id,false,0)" value="删除" class="btn btn-danger form-control">
-                                </div>
-                            </div>
-                        </div>
-                        <div class="form-group row">
-                            <div class="col-10 offset-1 p-1 border rounded bg-light" v-for="processContent in processContents" v-if="!processContent.addBtnShow && !processContent.type">
-                                <div class="col-12">
-                                    <div class="row small" style="opacity: 0.7"  :style="{'background-color' : (processContent.asnstatus == '部分收货') ? '#fde300' : ((processContent.asnstatus == '订单创建') ? 'red' : 'white')}"
-                                         @mouseover="update_delBtn(true,processContent.wms_code,processContent.commodity_id,false)" @mouseleave="update_delBtn(false,processContent.wms_code,processContent.commodity_id,false)">
-                                        <span class="font-weight-bold">单据号:</span>
-                                        <span class="font-weight-bold">@{{ processContent.wms_code }}</span>
-                                        <span class="ml-2 text-muted">单据类型:</span>
-                                        <span class=" text-muted">@{{ processContent.bill_type }}</span>
-                                        <span class="ml-2 font-weight-bold">商品名:</span>
-                                        <span class="font-weight-bold">
-                                            <span v-if="processContent.sign_commodity_name_mark">@{{ processContent.sign_commodity_name_mark }}</span>
-                                            <span v-else>@{{ processContent.commodity_name }}</span>
-                                        </span>
-                                        <span class="ml-2 text-muted">SKU:</span>
-                                        <span class=" text-muted">
-                                            <span v-if="processContent.sign_commodity_sku_mark">@{{ processContent.sign_commodity_sku_mark }}</span>
-                                            <span v-else>@{{ processContent.commodity_sku }}</span>
-                                        </span>
-                                        <span class="ml-2 font-weight-bold"> 数量:</span>
-                                        <span class="font-weight-bold">@{{ processContent.amount }}</span>
-                                        <span class="ml-2 font-weight-bold text-success" v-if="processContent.former_amount">原有数量:</span>
-                                        <span class="font-weight-bold text-success" v-if="processContent.former_amount">@{{ processContent.former_amount }}</span>
-                                        <span class="ml-2 text-muted">条码:</span>
-                                        <span class="text-muted">
-                                            <span v-if="processContent.sign_commodity_barcode_mark">@{{ processContent.sign_commodity_barcode_mark }}</span>
-                                            <span v-else>
-                                                <small v-if="processContent.commodity_barcode"> @{{ processContent.commodity_barcode }}</small>
-                                                <small v-if="processContent.commodity_barcodes && processContent.commodity_barcodes.length>0 && !processContent.commodity_barcode"
-                                                                            v-for="barcode in processContent.commodity_barcodes">@{{ barcode.code }}</small>
-                                            </span>
-                                        </span>
-                                        <button v-if="is_delBtn[processContent.wms_code+'_'+processContent.commodity_id+'_'+false]" @click="deleteProcessContent(processContent.wms_code,processContent.commodity_id,false,processContent.amount)" class="btn btn-sm btn-danger" style="position: absolute;right: 0;bottom: 0">删除</button>
-                                    </div>
-                                </div>
-                            </div>
-                        </div>
-                    </div>
-                    <div class="col-6 rounded mb-2 border" style="background: #ccd7dc;">
-                        <div class="form-group row mt-2">
-                            <label class="col-2 text-right mt-2">成品单据</label>
-                            <input class="form-control col-6" v-model="process.wms_code_full">&nbsp;&nbsp;&nbsp;
-                            <button class="btn btn-info btn-sm col-2"  type="button" @click="addProcessContent(true)"> 新增库单据</button>
-                            <button class="btn btn-sm btn-dark col-1 ml-1"
-                                    @click="showPasteDataModal(true)"><small>外部导入</small></button>
-                        </div>
-                        <div class="form-group row">
-                            <div class="col-10 offset-1 pl-0 pt-2 border rounded bg-light">
-                                <div class="row pt-2 small"><label class="col-3 text-right" >单据号</label>
-                                    <b class="col-8" v-if="processContents.length>0 && processContents[0].addBtnShow && processContents[0].type">@{{ processContents[0].wms_code }}</b></div> <!---->
-                                <div class="row pt-2" v-if="processContents.length>0 && processContents[0].addBtnShow && processContents[0].type">
-                                    <span class="col-12 text-center text-muted small">双击选择商品:
-                                        <button class="btn btn-sm btn-outline-info ml-1 mt-0" style="transform: scale(0.8)"
-                                                @click="finishedProductAddAll(processContents[0])"
-                                        >添加所有</button>
-                                    </span>
-                                    <span class=" col-11 offset-1 input-group" style=" border-radius: 5px; opacity: 1.5; text-align: center;">
-                                        <ul onselectstart="return false;" class="list-group tooltipTarget" style="width: 100%; max-height: 130px; overflow-y: scroll;">
-                                            <li  v-for="commodity in processContents[0].commodities" :id="commodity.id" :style="[{'background-color':processContents[0].commodity_id==commodity.id ? '#9fcdff':'' },{'text-decoration':commodityIds.includes(process.wms_code_full+'_'+commodity.id+'_true')? 'line-through red' : ''}]"
-                                                 @dblclick="selectedCommodity(commodity,processContents[0].wms_code,true)" class="list-group-item list-group-item-action p-0 m-0">
-                                                <div class="form-inline" style="cursor: default; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;">
-                                                    <small :title="commodity.name" class="text-left text-info col-6" style="overflow: hidden;">@{{ commodity.name }}</small>
-                                                    <small class="text-left  col-6"><a v-for="barcode in commodity.barcodes">@{{ barcode.code }}&nbsp;&nbsp;&nbsp;</a></small>
-                                                </div>
-                                            </li>
-                                        </ul>
-                                    </span>
-                                </div>
-                                <div class="row pt-2 small"><label class="col-3  text-right">商品名</label>
-                                    <input v-if="processContents.length>0 && processContents[0].addBtnShow && processContents[0].type" class="form-control form-control-sm col-8" @change="update_commodity_name(processContents[0])" v-model="processContents[0].commodity_name">
-                                </div>
-                                <div class="row pt-2 small"><label class="col-3  text-right">条码</label>
-                                    <input v-if="processContents.length>0 && processContents[0].addBtnShow && processContents[0].type" class="form-control form-control-sm col-8" @change="update_commodity_barcode(processContents[0],$event)" :value="processContents[0].commodity_barcode ? processContents[0].commodity_barcode :
-                                        (processContents[0].commodity_barcodes[0] ? processContents[0].commodity_barcodes[0].code :'')">
-                                </div>
-                                <div class="row pt-2 small"><label class="col-3  text-right">SKU</label>
-                                    <input v-if="processContents.length>0 && processContents[0].addBtnShow && processContents[0].type" class="form-control form-control-sm col-8" @change="update_commodity_sku(processContents[0])" v-model="processContents[0].commodity_sku">
-                                </div>
-                                <div class="row pt-2 small"><label class="col-3  text-right">单据类型</label>
-                                    <select v-if="processContents.length>0 && processContents[0].addBtnShow && processContents[0].type"
-                                            v-model="processContents[0].bill_type"  class="col-8 form-control form-control-sm">
-                                        <option value="移库单">移库单</option>
-                                        <option value="入库单">入库单</option>
-                                        <option value="出库单">出库单</option>
-                                    </select></div>
-                                <div class="row pt-2 small"><label class="col-3  text-right">数量</label>
-                                    <input v-if="processContents.length>0 && processContents[0].addBtnShow && processContents[0].type" v-model="processContents[0].amount" type="text" class="form-control form-control-sm col-8">
-                                </div>
-                                <div class="col-8 offset-2 pt-2 pb-2">
-                                    <input type="button" v-if="processContents.length>0 && processContents[0].addBtnShow && processContents[0].type"
-                                           @click="confirmStore(processContents[0].wms_code,processContents[0].commodity_id,processContents[0].amount,processContents[0].bill_type,true)"
-                                           value="确定新增" class="btn btn-primary btn-sm form-control form-control-sm">
-                                </div>
-                                <div class="col-8 offset-2 pt-2 pb-2">
-                                    <input v-if="processContents.length>0 && processContents[0].addBtnShow && processContents[0].type" type="button" @click="deleteProcessContent(processContents[0].wms_code,processContents[0].commodity_id,true,0)" value="删除" class="btn btn-danger form-control">
-                                </div>
-                            </div>
-                        </div>
-                        <div class="form-group row">
-                            <div class="col-10 offset-1 p-1 border rounded bg-light" v-for="processContent in processContents" v-if="!processContent.addBtnShow && processContent.type">
-                                <div class="col-12 border">
-                                    <div class="row small" style="opacity: 0.7"  :style="{'background-color' : (processContent.asnstatus == '部分收货') ? '#fde300' : ((processContent.asnstatus == '订单创建') ? 'red' : 'white')}"
-                                         @mouseover="update_delBtn(true,processContent.wms_code,processContent.commodity_id,true)" @mouseleave="update_delBtn(false,processContent.wms_code,processContent.commodity_id,true)">
-                                        <span class="font-weight-bold">单据号:</span>
-                                        <span class="font-weight-bold">@{{ processContent.wms_code }}</span>
-                                        <span class="ml-2 text-muted">单据类型:</span>
-                                        <span class=" text-muted">@{{ processContent.bill_type }}</span>
-                                        <span class="ml-2 font-weight-bold">商品名:</span>
-                                        <span class="font-weight-bold">
-                                            <span v-if="processContent.sign_commodity_name_mark">@{{ processContent.sign_commodity_name_mark }}</span>
-                                            <span v-else>@{{ processContent.commodity_name }}</span>
-                                        </span>
-                                        <span class="ml-2 text-muted">SKU:</span>
-                                        <span class=" text-muted">
-                                            <span v-if="processContent.sign_commodity_sku_mark">@{{ processContent.sign_commodity_sku_mark }}</span>
-                                            <span v-else>@{{ processContent.commodity_sku }}</span>
-                                        </span>
-                                        <span class="ml-2 font-weight-bold">数量:</span>
-                                        <span class="font-weight-bold">@{{ processContent.amount }}</span>
-                                        <span class="ml-2 font-weight-bold text-success" v-if="processContent.former_amount">原有数量:</span>
-                                        <span class="font-weight-bold text-success" v-if="processContent.former_amount">@{{ processContent.former_amount }}</span>
-                                        <span class="ml-2 text-muted">条码:</span>
-                                        <span class="text-muted">
-                                            <span v-if="processContent.sign_commodity_barcode_mark">@{{ processContent.sign_commodity_barcode_mark }}</span>
-                                            <span v-else>
-                                                <small v-if="processContent.commodity_barcode"> @{{ processContent.commodity_barcode }}</small>
-                                                <small v-if="processContent.commodity_barcodes && processContent.commodity_barcodes.length>0 && !processContent.commodity_barcode"
-                                                   v-for="barcode in processContent.commodity_barcodes">@{{ barcode.code }}</small>
-                                            </span>
-                                        </span>
-                                        <button v-if="is_delBtn[processContent.wms_code+'_'+processContent.commodity_id+'_'+true]" @click="deleteProcessContent(processContent.wms_code,processContent.commodity_id,true,processContent.amount)" class="btn btn-sm btn-danger" style="position: absolute;right: 0;bottom: 0">删除</button>
-                                    </div>
-                                </div>
-                            </div>
-                        </div>
-                    </div>
-                </div>
-                <div class="form-group row" v-if="process.id">
-                    <label class="col-3 col-form-label text-right" >任务号</label>
-                    <input disabled :value="process.code" class="form-control col-8">
-                </div>
-                <div class="form-group row">
-                    <label class="col-3 col-form-label text-right" >货主</label>
-                    <input readonly v-if="processContents.length>0" :value="process.owner_name ? process.owner_name : processContents[processContents.length-1].owner_name" class="form-control col-8" :class="error.owner_id && error.owner_id.length>0 ? 'is-invalid' :''">
-                    <span v-if="error.owner_id && error.owner_id.length>0" class="invalid-feedback col-8 offset-3 mt-0" role="alert">
-                        <strong>@{{ error.owner_id[0] }}</strong>
-                    </span>
-                </div>
-                <div class="form-group row">
-                    <label class="col-3 col-form-label text-right" >加工类型</label>
-                    <select :disabled="is_hide" v-model="process.process_method_id" class="form-control col-8" :class="error.process_method_id && error.process_method_id.length>0 ? 'is-invalid' :''">
-                        <option  v-for="processMethod in processMethods" :value="processMethod.id">@{{ processMethod.name }}</option>
-                    </select>
-                </div>
-                <div class="form-group row">
-                    <label class="col-3 col-form-label text-right" >加工数量</label>
-                    <input :readonly="is_hide" v-model="process.amount" type="text" :placeholder="'自动计算数量为“' + sum +'”请填写实际数'" class="form-control col-8" :class="error.amount && error.amount.length>0 ? 'is-invalid' :''">
-                    <span v-if="error.amount && error.amount.length>0" class="invalid-feedback col-8 offset-3 mt-0" role="alert">
-                        <strong>@{{ error.amount[0] }}</strong>
-                    </span>
-                </div>
-                <div class="form-group row">
-                    <label class="col-3 col-form-label text-right" >单价</label>
-                    <input :readonly="is_hide" v-model="process.unit_price" type="text" class="form-control col-8" :class="error.unit_price && error.unit_price.length>0 ? 'is-invalid' :''">
-                    <span v-if="error.unit_price && error.unit_price.length>0" class="invalid-feedback col-8 offset-3 mt-0" role="alert">
-                        <strong>@{{ error.unit_price[0] }}</strong>
-                    </span>
-                </div>
-                <div class="form-group row">
-                    <label for="designate_id" class="col-3 col-form-label text-right">指定接单人</label>
-                    <select :disabled="is_hide" id="designate_id" class="form-control col-5" v-model="process.designate_id">
-                        <option v-for="user in users" :value="user.id">@{{ user.name }}</option>
-                    </select>
-                    <label class="col-3" v-if="!is_hide"><input class="text form-control rounded-pill" placeholder="搜索人员" @input="seekUser($event)"></label>
-                </div>
-                <div class="form-group row">
-                    <label class="col-3 col-form-label text-right" >加工备注(选填)</label>
-                    <textarea :readonly="is_hide" v-model="process.remark" type="text" class="form-control col-8"></textarea>
-                </div>
-                <div class="form-group row">
-                    <label class="col-3 col-form-label text-right" >结算备注(选填)</label>
-                    <textarea :readonly="is_hide" v-model="process.balance_remark" type="text" class="form-control col-8"></textarea>
-                </div>
-                <div class="form-group row">
-                    <div class="col-8 offset-3 p-0">
-                        <input type="button" @click="submit()" class="btn btn-success form-control" value="提交">
-                    </div>
-                </div>
-            </div>
-        </div>
+        <h3 class="text-danger"> 当前功能已停用,请转至SWMS系统</h3>
+{{--        <div class="card col-md-8 offset-md-2">--}}
+{{--            <div class="card-body">--}}
+{{--                <div class="modal fade" id="pasteData" tabindex="-1" role="dialog" aria-labelledby="pasteDataTitle" aria-hidden="true">--}}
+{{--                    <div class="modal-dialog modal-dialog-centered modal-lg" role="document">--}}
+{{--                        <div class="modal-content">--}}
+{{--                            <div class="modal-header">--}}
+{{--                                <div class="row modal-title font-weight-bold w-100 text-nowrap ml-1 noselect" id="pasteDataTitle">--}}
+{{--                                    <span v-for="(row,i) in rows" draggable="true"--}}
+{{--                                          @drop="drop($event,i)" @dragover="dragover($event)" @dragstart="dragstart($event,i)"--}}
+{{--                                          :class="row=='货主' || row=='单据' || row=='品名' || row=='数量' || row=='SKU' ? 'text-danger' : ''"--}}
+{{--                                          class="col-2 border" style="cursor: move">@{{ row }}</span>--}}
+{{--                                </div>--}}
+{{--                            </div>--}}
+{{--                            <div class="modal-body" style="text-align:center">--}}
+{{--                                <button type="button" id="popover" class="btn btn-danger"--}}
+{{--                                        data-container="body" data-toggle="popover" data-placement="bottom"--}}
+{{--                                        :data-content="popoverContent" data-html="true">--}}
+{{--                                    部分数据导入失败--}}
+{{--                                </button>--}}
+{{--                                <textarea class="w-100" style="height: 400px;" id="pasteDataText" v-model="pasteData" @keydown.tab="forbidTab($event)" @keyup.tab="replaceSpacing()"--}}
+{{--                                placeholder="内容可为EXCEL复制,也可手动输入使用“TAB”缩进符区分列,请注意表头顺序,可拖拽表头字段调整顺序,以该顺序为准"--}}
+{{--                                ></textarea>--}}
+{{--                            </div>--}}
+{{--                            <div class="modal-footer">--}}
+{{--                                <button class="btn btn-dark" @click="importPasteData()">开始导入</button>--}}
+{{--                            </div>--}}
+{{--                        </div>--}}
+{{--                    </div>--}}
+{{--                </div>--}}
+{{--                <div class="row">--}}
+{{--                    <div class="col-6  rounded mb-2 border" style="background: #efe3d9;">--}}
+{{--                        <div class="form-group row mt-2" v-if="!is_hide">--}}
+{{--                            <label class="col-2 text-right mt-2">原料单据</label>--}}
+{{--                            <input class="form-control col-6" v-model="process.wms_code">&nbsp;&nbsp;&nbsp;--}}
+{{--                            <button class="btn btn-info btn-sm col-2"  type="button" @click="addProcessContent(false)"> 新增库单据</button>--}}
+{{--                            <button class="btn btn-sm btn-dark col-1 ml-1"--}}
+{{--                                    @click="showPasteDataModal()"><small>外部导入</small></button>--}}
+{{--                        </div>--}}
+{{--                        <div class="form-group row" v-if="!is_hide">--}}
+{{--                            <div class="col-10 offset-1 pl-0 pt-2 border rounded bg-light">--}}
+{{--                                <div class="row pt-2 small"><label class="col-3 text-right" >单据号</label>--}}
+{{--                                    <b class="col-8" v-if="processContents.length>0 && processContents[0].addBtnShow && !processContents[0].type">@{{ processContents[0].wms_code }}</b></div> <!---->--}}
+{{--                                <div class="row pt-2" v-if="processContents.length>0 && processContents[0].addBtnShow && !processContents[0].type">--}}
+{{--                                    <span class="col-12 text-center text-muted small">双击选择商品:--}}
+{{--                                        <button class="btn btn-sm btn-outline-info ml-1 mt-0" style="transform: scale(0.8)"--}}
+{{--                                            @click="addAll(processContents[0])"--}}
+{{--                                            >添加所有</button>--}}
+{{--                                    </span>--}}
+{{--                                    <span class=" col-11 offset-1 input-group" style=" border-radius: 5px; opacity: 1.5; text-align: center;">--}}
+{{--                                        <ul onselectstart="return false;" class="list-group tooltipTarget" style="width: 100%; max-height: 130px; overflow-y: scroll;">--}}
+{{--                                            <li  v-for="commodity in processContents[0].commodities" :id="commodity.id"  :style="[{'background-color':processContents[0].commodity_id==commodity.id ? '#9fcdff':'' },{'text-decoration':commodityIds.includes(process.wms_code+'_'+commodity.id+'_false')? 'line-through red' : ''}]"--}}
+{{--                                                @dblclick="selectedCommodity(commodity,processContents[0].wms_code,false)" class="list-group-item list-group-item-action p-0 m-0">--}}
+{{--                                                <div class="form-inline" style="cursor: default; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;">--}}
+{{--                                                    <small :title="commodity.name" class="text-left text-primary col-6 tooltipTarget"  style="overflow: hidden;">@{{ commodity.name }}</small>--}}
+{{--                                                    <small class="text-left  col-6"><span v-for="barcode in commodity.barcodes">@{{ barcode.code }}&nbsp;&nbsp;&nbsp;</span></small>--}}
+{{--                                                </div>--}}
+{{--                                            </li>--}}
+{{--                                        </ul>--}}
+{{--                                    </span>--}}
+{{--                                </div>--}}
+{{--                                <div class="row pt-2 small"><label class="col-3  text-right">商品名</label>--}}
+{{--                                    <input v-if="processContents.length>0 && processContents[0].addBtnShow && !processContents[0].type" class="form-control form-control-sm col-8" @change="update_commodity_name(processContents[0])" v-model="processContents[0].commodity_name">--}}
+{{--                                </div>--}}
+{{--                                <div class="row pt-2 small"><label class="col-3  text-right">条码</label>--}}
+{{--                                    <input v-if="processContents.length>0 && processContents[0].addBtnShow && !processContents[0].type" class="form-control form-control-sm col-8" @change="update_commodity_barcode(processContents[0],$event)" :value="processContents[0].commodity_barcode ? processContents[0].commodity_barcode :--}}
+{{--                                    (processContents[0].commodity_barcodes[0] ? processContents[0].commodity_barcodes[0].code :'')">--}}
+{{--                                </div>--}}
+{{--                                <div class="row pt-2 small"><label class="col-3  text-right">SKU</label>--}}
+{{--                                    <input v-if="processContents.length>0 && processContents[0].addBtnShow && !processContents[0].type" class="form-control form-control-sm col-8" @change="update_commodity_sku(processContents[0])" v-model="processContents[0].commodity_sku">--}}
+{{--                                </div>--}}
+{{--                                <div class="row pt-2 small"><label class="col-3  text-right">单据类型</label>--}}
+{{--                                    <select v-if="processContents.length>0 && processContents[0].addBtnShow && !processContents[0].type"--}}
+{{--                                            v-model="processContents[0].bill_type"  class="col-8 form-control form-control-sm">--}}
+{{--                                        <option value="移库单">移库单</option>--}}
+{{--                                        <option value="入库单">入库单</option>--}}
+{{--                                        <option value="出库单">出库单</option>--}}
+{{--                                    </select></div>--}}
+{{--                                <div class="row pt-2 small"><label class="col-3  text-right">数量</label>--}}
+{{--                                    <input v-if="processContents.length>0 && processContents[0].addBtnShow && !processContents[0].type" v-model="processContents[0].amount" type="text" class="form-control form-control-sm col-8">--}}
+{{--                                </div>--}}
+{{--                                <div class="col-8 offset-2 pt-2 pb-2">--}}
+{{--                                    <input type="button" v-if="processContents.length>0 && processContents[0].addBtnShow && !processContents[0].type"--}}
+{{--                                           @click="confirmStore(processContents[0].wms_code,processContents[0].commodity_id,processContents[0].amount,processContents[0].bill_type,false)"--}}
+{{--                                           value="确定新增" class="btn btn-primary btn-sm form-control form-control-sm">--}}
+{{--                                </div>--}}
+{{--                                <div class="col-8 offset-2 pt-2 pb-2">--}}
+{{--                                    <input v-if="processContents.length>0 && processContents[0].addBtnShow && !processContents[0].type" type="button" @click="deleteProcessContent(processContents[0].wms_code,processContents[0].commodity_id,false,0)" value="删除" class="btn btn-danger form-control">--}}
+{{--                                </div>--}}
+{{--                            </div>--}}
+{{--                        </div>--}}
+{{--                        <div class="form-group row">--}}
+{{--                            <div class="col-10 offset-1 p-1 border rounded bg-light" v-for="processContent in processContents" v-if="!processContent.addBtnShow && !processContent.type">--}}
+{{--                                <div class="col-12">--}}
+{{--                                    <div class="row small" style="opacity: 0.7"  :style="{'background-color' : (processContent.asnstatus == '部分收货') ? '#fde300' : ((processContent.asnstatus == '订单创建') ? 'red' : 'white')}"--}}
+{{--                                         @mouseover="update_delBtn(true,processContent.wms_code,processContent.commodity_id,false)" @mouseleave="update_delBtn(false,processContent.wms_code,processContent.commodity_id,false)">--}}
+{{--                                        <span class="font-weight-bold">单据号:</span>--}}
+{{--                                        <span class="font-weight-bold">@{{ processContent.wms_code }}</span>--}}
+{{--                                        <span class="ml-2 text-muted">单据类型:</span>--}}
+{{--                                        <span class=" text-muted">@{{ processContent.bill_type }}</span>--}}
+{{--                                        <span class="ml-2 font-weight-bold">商品名:</span>--}}
+{{--                                        <span class="font-weight-bold">--}}
+{{--                                            <span v-if="processContent.sign_commodity_name_mark">@{{ processContent.sign_commodity_name_mark }}</span>--}}
+{{--                                            <span v-else>@{{ processContent.commodity_name }}</span>--}}
+{{--                                        </span>--}}
+{{--                                        <span class="ml-2 text-muted">SKU:</span>--}}
+{{--                                        <span class=" text-muted">--}}
+{{--                                            <span v-if="processContent.sign_commodity_sku_mark">@{{ processContent.sign_commodity_sku_mark }}</span>--}}
+{{--                                            <span v-else>@{{ processContent.commodity_sku }}</span>--}}
+{{--                                        </span>--}}
+{{--                                        <span class="ml-2 font-weight-bold"> 数量:</span>--}}
+{{--                                        <span class="font-weight-bold">@{{ processContent.amount }}</span>--}}
+{{--                                        <span class="ml-2 font-weight-bold text-success" v-if="processContent.former_amount">原有数量:</span>--}}
+{{--                                        <span class="font-weight-bold text-success" v-if="processContent.former_amount">@{{ processContent.former_amount }}</span>--}}
+{{--                                        <span class="ml-2 text-muted">条码:</span>--}}
+{{--                                        <span class="text-muted">--}}
+{{--                                            <span v-if="processContent.sign_commodity_barcode_mark">@{{ processContent.sign_commodity_barcode_mark }}</span>--}}
+{{--                                            <span v-else>--}}
+{{--                                                <small v-if="processContent.commodity_barcode"> @{{ processContent.commodity_barcode }}</small>--}}
+{{--                                                <small v-if="processContent.commodity_barcodes && processContent.commodity_barcodes.length>0 && !processContent.commodity_barcode"--}}
+{{--                                                                            v-for="barcode in processContent.commodity_barcodes">@{{ barcode.code }}</small>--}}
+{{--                                            </span>--}}
+{{--                                        </span>--}}
+{{--                                        <button v-if="is_delBtn[processContent.wms_code+'_'+processContent.commodity_id+'_'+false]" @click="deleteProcessContent(processContent.wms_code,processContent.commodity_id,false,processContent.amount)" class="btn btn-sm btn-danger" style="position: absolute;right: 0;bottom: 0">删除</button>--}}
+{{--                                    </div>--}}
+{{--                                </div>--}}
+{{--                            </div>--}}
+{{--                        </div>--}}
+{{--                    </div>--}}
+{{--                    <div class="col-6 rounded mb-2 border" style="background: #ccd7dc;">--}}
+{{--                        <div class="form-group row mt-2">--}}
+{{--                            <label class="col-2 text-right mt-2">成品单据</label>--}}
+{{--                            <input class="form-control col-6" v-model="process.wms_code_full">&nbsp;&nbsp;&nbsp;--}}
+{{--                            <button class="btn btn-info btn-sm col-2"  type="button" @click="addProcessContent(true)"> 新增库单据</button>--}}
+{{--                            <button class="btn btn-sm btn-dark col-1 ml-1"--}}
+{{--                                    @click="showPasteDataModal(true)"><small>外部导入</small></button>--}}
+{{--                        </div>--}}
+{{--                        <div class="form-group row">--}}
+{{--                            <div class="col-10 offset-1 pl-0 pt-2 border rounded bg-light">--}}
+{{--                                <div class="row pt-2 small"><label class="col-3 text-right" >单据号</label>--}}
+{{--                                    <b class="col-8" v-if="processContents.length>0 && processContents[0].addBtnShow && processContents[0].type">@{{ processContents[0].wms_code }}</b></div> <!---->--}}
+{{--                                <div class="row pt-2" v-if="processContents.length>0 && processContents[0].addBtnShow && processContents[0].type">--}}
+{{--                                    <span class="col-12 text-center text-muted small">双击选择商品:--}}
+{{--                                        <button class="btn btn-sm btn-outline-info ml-1 mt-0" style="transform: scale(0.8)"--}}
+{{--                                                @click="finishedProductAddAll(processContents[0])"--}}
+{{--                                        >添加所有</button>--}}
+{{--                                    </span>--}}
+{{--                                    <span class=" col-11 offset-1 input-group" style=" border-radius: 5px; opacity: 1.5; text-align: center;">--}}
+{{--                                        <ul onselectstart="return false;" class="list-group tooltipTarget" style="width: 100%; max-height: 130px; overflow-y: scroll;">--}}
+{{--                                            <li  v-for="commodity in processContents[0].commodities" :id="commodity.id" :style="[{'background-color':processContents[0].commodity_id==commodity.id ? '#9fcdff':'' },{'text-decoration':commodityIds.includes(process.wms_code_full+'_'+commodity.id+'_true')? 'line-through red' : ''}]"--}}
+{{--                                                 @dblclick="selectedCommodity(commodity,processContents[0].wms_code,true)" class="list-group-item list-group-item-action p-0 m-0">--}}
+{{--                                                <div class="form-inline" style="cursor: default; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;">--}}
+{{--                                                    <small :title="commodity.name" class="text-left text-info col-6" style="overflow: hidden;">@{{ commodity.name }}</small>--}}
+{{--                                                    <small class="text-left  col-6"><a v-for="barcode in commodity.barcodes">@{{ barcode.code }}&nbsp;&nbsp;&nbsp;</a></small>--}}
+{{--                                                </div>--}}
+{{--                                            </li>--}}
+{{--                                        </ul>--}}
+{{--                                    </span>--}}
+{{--                                </div>--}}
+{{--                                <div class="row pt-2 small"><label class="col-3  text-right">商品名</label>--}}
+{{--                                    <input v-if="processContents.length>0 && processContents[0].addBtnShow && processContents[0].type" class="form-control form-control-sm col-8" @change="update_commodity_name(processContents[0])" v-model="processContents[0].commodity_name">--}}
+{{--                                </div>--}}
+{{--                                <div class="row pt-2 small"><label class="col-3  text-right">条码</label>--}}
+{{--                                    <input v-if="processContents.length>0 && processContents[0].addBtnShow && processContents[0].type" class="form-control form-control-sm col-8" @change="update_commodity_barcode(processContents[0],$event)" :value="processContents[0].commodity_barcode ? processContents[0].commodity_barcode :--}}
+{{--                                        (processContents[0].commodity_barcodes[0] ? processContents[0].commodity_barcodes[0].code :'')">--}}
+{{--                                </div>--}}
+{{--                                <div class="row pt-2 small"><label class="col-3  text-right">SKU</label>--}}
+{{--                                    <input v-if="processContents.length>0 && processContents[0].addBtnShow && processContents[0].type" class="form-control form-control-sm col-8" @change="update_commodity_sku(processContents[0])" v-model="processContents[0].commodity_sku">--}}
+{{--                                </div>--}}
+{{--                                <div class="row pt-2 small"><label class="col-3  text-right">单据类型</label>--}}
+{{--                                    <select v-if="processContents.length>0 && processContents[0].addBtnShow && processContents[0].type"--}}
+{{--                                            v-model="processContents[0].bill_type"  class="col-8 form-control form-control-sm">--}}
+{{--                                        <option value="移库单">移库单</option>--}}
+{{--                                        <option value="入库单">入库单</option>--}}
+{{--                                        <option value="出库单">出库单</option>--}}
+{{--                                    </select></div>--}}
+{{--                                <div class="row pt-2 small"><label class="col-3  text-right">数量</label>--}}
+{{--                                    <input v-if="processContents.length>0 && processContents[0].addBtnShow && processContents[0].type" v-model="processContents[0].amount" type="text" class="form-control form-control-sm col-8">--}}
+{{--                                </div>--}}
+{{--                                <div class="col-8 offset-2 pt-2 pb-2">--}}
+{{--                                    <input type="button" v-if="processContents.length>0 && processContents[0].addBtnShow && processContents[0].type"--}}
+{{--                                           @click="confirmStore(processContents[0].wms_code,processContents[0].commodity_id,processContents[0].amount,processContents[0].bill_type,true)"--}}
+{{--                                           value="确定新增" class="btn btn-primary btn-sm form-control form-control-sm">--}}
+{{--                                </div>--}}
+{{--                                <div class="col-8 offset-2 pt-2 pb-2">--}}
+{{--                                    <input v-if="processContents.length>0 && processContents[0].addBtnShow && processContents[0].type" type="button" @click="deleteProcessContent(processContents[0].wms_code,processContents[0].commodity_id,true,0)" value="删除" class="btn btn-danger form-control">--}}
+{{--                                </div>--}}
+{{--                            </div>--}}
+{{--                        </div>--}}
+{{--                        <div class="form-group row">--}}
+{{--                            <div class="col-10 offset-1 p-1 border rounded bg-light" v-for="processContent in processContents" v-if="!processContent.addBtnShow && processContent.type">--}}
+{{--                                <div class="col-12 border">--}}
+{{--                                    <div class="row small" style="opacity: 0.7"  :style="{'background-color' : (processContent.asnstatus == '部分收货') ? '#fde300' : ((processContent.asnstatus == '订单创建') ? 'red' : 'white')}"--}}
+{{--                                         @mouseover="update_delBtn(true,processContent.wms_code,processContent.commodity_id,true)" @mouseleave="update_delBtn(false,processContent.wms_code,processContent.commodity_id,true)">--}}
+{{--                                        <span class="font-weight-bold">单据号:</span>--}}
+{{--                                        <span class="font-weight-bold">@{{ processContent.wms_code }}</span>--}}
+{{--                                        <span class="ml-2 text-muted">单据类型:</span>--}}
+{{--                                        <span class=" text-muted">@{{ processContent.bill_type }}</span>--}}
+{{--                                        <span class="ml-2 font-weight-bold">商品名:</span>--}}
+{{--                                        <span class="font-weight-bold">--}}
+{{--                                            <span v-if="processContent.sign_commodity_name_mark">@{{ processContent.sign_commodity_name_mark }}</span>--}}
+{{--                                            <span v-else>@{{ processContent.commodity_name }}</span>--}}
+{{--                                        </span>--}}
+{{--                                        <span class="ml-2 text-muted">SKU:</span>--}}
+{{--                                        <span class=" text-muted">--}}
+{{--                                            <span v-if="processContent.sign_commodity_sku_mark">@{{ processContent.sign_commodity_sku_mark }}</span>--}}
+{{--                                            <span v-else>@{{ processContent.commodity_sku }}</span>--}}
+{{--                                        </span>--}}
+{{--                                        <span class="ml-2 font-weight-bold">数量:</span>--}}
+{{--                                        <span class="font-weight-bold">@{{ processContent.amount }}</span>--}}
+{{--                                        <span class="ml-2 font-weight-bold text-success" v-if="processContent.former_amount">原有数量:</span>--}}
+{{--                                        <span class="font-weight-bold text-success" v-if="processContent.former_amount">@{{ processContent.former_amount }}</span>--}}
+{{--                                        <span class="ml-2 text-muted">条码:</span>--}}
+{{--                                        <span class="text-muted">--}}
+{{--                                            <span v-if="processContent.sign_commodity_barcode_mark">@{{ processContent.sign_commodity_barcode_mark }}</span>--}}
+{{--                                            <span v-else>--}}
+{{--                                                <small v-if="processContent.commodity_barcode"> @{{ processContent.commodity_barcode }}</small>--}}
+{{--                                                <small v-if="processContent.commodity_barcodes && processContent.commodity_barcodes.length>0 && !processContent.commodity_barcode"--}}
+{{--                                                   v-for="barcode in processContent.commodity_barcodes">@{{ barcode.code }}</small>--}}
+{{--                                            </span>--}}
+{{--                                        </span>--}}
+{{--                                        <button v-if="is_delBtn[processContent.wms_code+'_'+processContent.commodity_id+'_'+true]" @click="deleteProcessContent(processContent.wms_code,processContent.commodity_id,true,processContent.amount)" class="btn btn-sm btn-danger" style="position: absolute;right: 0;bottom: 0">删除</button>--}}
+{{--                                    </div>--}}
+{{--                                </div>--}}
+{{--                            </div>--}}
+{{--                        </div>--}}
+{{--                    </div>--}}
+{{--                </div>--}}
+{{--                <div class="form-group row" v-if="process.id">--}}
+{{--                    <label class="col-3 col-form-label text-right" >任务号</label>--}}
+{{--                    <input disabled :value="process.code" class="form-control col-8">--}}
+{{--                </div>--}}
+{{--                <div class="form-group row">--}}
+{{--                    <label class="col-3 col-form-label text-right" >货主</label>--}}
+{{--                    <input readonly v-if="processContents.length>0" :value="process.owner_name ? process.owner_name : processContents[processContents.length-1].owner_name" class="form-control col-8" :class="error.owner_id && error.owner_id.length>0 ? 'is-invalid' :''">--}}
+{{--                    <span v-if="error.owner_id && error.owner_id.length>0" class="invalid-feedback col-8 offset-3 mt-0" role="alert">--}}
+{{--                        <strong>@{{ error.owner_id[0] }}</strong>--}}
+{{--                    </span>--}}
+{{--                </div>--}}
+{{--                <div class="form-group row">--}}
+{{--                    <label class="col-3 col-form-label text-right" >加工类型</label>--}}
+{{--                    <select :disabled="is_hide" v-model="process.process_method_id" class="form-control col-8" :class="error.process_method_id && error.process_method_id.length>0 ? 'is-invalid' :''">--}}
+{{--                        <option  v-for="processMethod in processMethods" :value="processMethod.id">@{{ processMethod.name }}</option>--}}
+{{--                    </select>--}}
+{{--                </div>--}}
+{{--                <div class="form-group row">--}}
+{{--                    <label class="col-3 col-form-label text-right" >加工数量</label>--}}
+{{--                    <input :readonly="is_hide" v-model="process.amount" type="text" :placeholder="'自动计算数量为“' + sum +'”请填写实际数'" class="form-control col-8" :class="error.amount && error.amount.length>0 ? 'is-invalid' :''">--}}
+{{--                    <span v-if="error.amount && error.amount.length>0" class="invalid-feedback col-8 offset-3 mt-0" role="alert">--}}
+{{--                        <strong>@{{ error.amount[0] }}</strong>--}}
+{{--                    </span>--}}
+{{--                </div>--}}
+{{--                <div class="form-group row">--}}
+{{--                    <label class="col-3 col-form-label text-right" >单价</label>--}}
+{{--                    <input :readonly="is_hide" v-model="process.unit_price" type="text" class="form-control col-8" :class="error.unit_price && error.unit_price.length>0 ? 'is-invalid' :''">--}}
+{{--                    <span v-if="error.unit_price && error.unit_price.length>0" class="invalid-feedback col-8 offset-3 mt-0" role="alert">--}}
+{{--                        <strong>@{{ error.unit_price[0] }}</strong>--}}
+{{--                    </span>--}}
+{{--                </div>--}}
+{{--                <div class="form-group row">--}}
+{{--                    <label for="designate_id" class="col-3 col-form-label text-right">指定接单人</label>--}}
+{{--                    <select :disabled="is_hide" id="designate_id" class="form-control col-5" v-model="process.designate_id">--}}
+{{--                        <option v-for="user in users" :value="user.id">@{{ user.name }}</option>--}}
+{{--                    </select>--}}
+{{--                    <label class="col-3" v-if="!is_hide"><input class="text form-control rounded-pill" placeholder="搜索人员" @input="seekUser($event)"></label>--}}
+{{--                </div>--}}
+{{--                <div class="form-group row">--}}
+{{--                    <label class="col-3 col-form-label text-right" >加工备注(选填)</label>--}}
+{{--                    <textarea :readonly="is_hide" v-model="process.remark" type="text" class="form-control col-8"></textarea>--}}
+{{--                </div>--}}
+{{--                <div class="form-group row">--}}
+{{--                    <label class="col-3 col-form-label text-right" >结算备注(选填)</label>--}}
+{{--                    <textarea :readonly="is_hide" v-model="process.balance_remark" type="text" class="form-control col-8"></textarea>--}}
+{{--                </div>--}}
+{{--                <div class="form-group row">--}}
+{{--                    <div class="col-8 offset-3 p-0">--}}
+{{--                        <input type="button" @click="submit()" class="btn btn-success form-control" value="提交">--}}
+{{--                    </div>--}}
+{{--                </div>--}}
+{{--            </div>--}}
+{{--        </div>--}}
     </div>
 @endsection
 

+ 3 - 1
resources/views/procurement/finance/procurementBill.blade.php

@@ -31,8 +31,9 @@
                 <td class="tooltipTarget" style="max-width: 200px;overflow:hidden" v-if="procurement.owner_material"><span>@{{ procurement.owner_material.material_code }}</span></td>
                 <td class="text-muted" v-if="procurement.owner_material.material"><span>@{{ procurement.owner_material.material.name }}</span></td>
                 <td class="text-muted" v-if="procurement.owner_material"><span>@{{ procurement.owner_material.size }}</span></td>
-                <td class="text-muted" v-if="procurement.owner_material"><span>@{{ procurement.owner_material.special }}</span></td>
+                <td class="text-muted"  style="max-width: 200px;overflow:hidden" v-if="procurement.owner_material"><span>@{{ procurement.owner_material.special }}</span></td>
                 <td class="text-muted" v-if="procurement.owner_material"><span>@{{ procurement.owner_material.specification }}</span></td>
+                <td class="text-muted"  style="max-width: 200px;overflow:hidden"><span>@{{ procurement.remark }}</span></td>
                 <td><span>@{{ procurement.quantity }}</span></td>{{--采购数量--}}
                 <td><span>@{{ procurement.amount }}</span></td> {{--销售数量--}}
                 <td><span v-if="procurement.receive_amount">@{{ procurement.receive_amount }}</span></td>
@@ -126,6 +127,7 @@
                     {name: 'size', value: '尺寸大小',class: 'text-center'},
                     {name: 'special', value: '特殊要求',class: 'text-center'},
                     {name: 'specification', value: '材质规格',class: 'text-center'},
+                    {name: '备注', value: '备注',class: 'text-center'},
                     {name: 'quantity', value: '采购数量', neglect: true,class: 'text-center'},
                     {name: '销售数量', value: '销售数量', neglect: true,class: 'text-center'},
                     {name: 'deliver_amount', value: '收货数量', neglect: true,class: 'text-center'},

+ 2 - 0
resources/views/procurement/procurement/index.blade.php

@@ -126,6 +126,7 @@
                 <td class="text-center"><span>@{{ (procurement.quantity*procurement.unit_price).toFixed(2) }}</span></td>
                 <td class="text-center"><span>@{{ procurement.created_at }}</span></td>
                 <td class="text-muted"><span v-if="procurement.supplier">@{{ procurement.supplier.phone }}</span></td>
+                <td class="text-muted"><span v-if="procurement.remark">@{{ procurement.remark }}</span></td>
             </tr>
         </table>
         <div class="text-info h5 btn btn">{{$procurements->count()}}/@{{ sum }}</div>
@@ -246,6 +247,7 @@
                     {name: '销售总价', value: '销售总价(元)', neglect: true,class: 'text-center'},
                     {name: 'created_at', value: '创建时间', neglect: true,class: 'text-center'},
                     {name: '联系方式', value: '供应商联系方式', neglect: true,class: 'text-center'},
+                    {name: '备注', value: '备注', neglect: true,class: 'text-center'},
                 ];
 
                 new Header({

+ 259 - 258
resources/views/rejected/create.blade.php

@@ -2,264 +2,265 @@
 @section('title')录入-退货管理@endsection
 @section('content')
     <div class="container-fluid d-none" id="editPanel">
-        <div class="card mb-2">
-            <div style="position: relative" v-if="status.lockingBillPanel">
-                <div style="background-color: #aaa; height: 535px; opacity: 0.5;
-                width:100%;z-index: 9; position: absolute" class="d-flex ">
-                </div>
-                <div style="height: 550px;
-                width:100%;z-index: 10; position: absolute" class="d-flex align-items-center ">
-                    <button class="btn btn-info flex-fill" @click="cancelPackCommitEdit">取消锁定</button>
-                </div>
-            </div>
-            <div class="row">
-                <div class="col-7">
-                    <div class="card-body">
-                        <div class="list-group" style="max-height: 477px;overflow-y: scroll">
-                            <table class="table table-sm table-striped table-info table-hover table-bordered">
-                                <tr>
-                                    <th>创建时间</th>
-                                    <th>客户名称</th>
-                                    <th>退回单号</th>
-                                    <th>退回公司</th>
-                                    <th>姓名</th>
-                                    <th>电话</th>
-                                    <th>到付费用</th>
-                                    <th>订单号</th>
-                                    <th>原单号</th>
-                                    <th>是否入库</th>
-                                    {{--                                    <th>备注</th>--}}
-                                    <th>操作</th>
-                                </tr>
-                                <tr :class="[rejectedBill.isEditing?'bg-info':'']"
-                                    v-for="rejectedBill in rejectedBills" :data-id="rejectedBill.id" @click="editBill">
-                                    <td>@{{rejectedBill.created_at | dateNoYear}}</td>
-                                    <td>@{{rejectedBill.owner_name }}</td>
-                                    <td>@{{rejectedBill.logistic_number_return }}</td>
-                                    <td>@{{rejectedBill.logistic_name}}</td>
-                                    <td>@{{rejectedBill.sender}}</td>
-                                    <td>@{{rejectedBill.mobile_sender}}</td>
-                                    <td>@{{rejectedBill.fee_collected}}</td>
-                                    <td>@{{rejectedBill.order_number}}</td>
-                                    <td>@{{rejectedBill.logistic_number}}</td>
-                                    <td>@{{rejectedBill.is_loaded|isLoaded}}</td>
-                                    {{--                                    <td>@{{rejectedBill.remark}}</td>--}}
-                                    @can('退货管理-删除')
-                                        <td>
-                                            <button class="btn btn-sm btn-outline-danger"
-                                                    @click.stop="deleteBill(rejectedBill)">删
-                                            </button>
-                                        </td>@endcan
-                                </tr>
-                            </table>
-                        </div>
-                    </div>
-                </div>
-                <div class="col-5 disabled">
-                    <div class="card-body ml-n4">
-                        <table class="table table-striped table-sm  table-bordered"
-                               :class="[status.billEditing?'bg-info':'']">
-                            <tr>
-                                <td>
-                                    <div class="form-group mb-0">
-                                        <label for="id_owner" class="col-form-label text-right">客户名称</label>
-                                        <div class="input-group">
-                                            <select name="id_owner" id="id_owner" class="form-control"
-                                                    :class="[errors.id_owner?'is-invalid':'']"
-                                                    v-model="billInputting.id_owner" required data-focusOrder="1">
-                                                <option value=""></option>
-                                                <option v-for="owner in owners" :value="owner.id">@{{ owner.name }}
-                                                </option>
-                                            </select>
-                                            <input type="text" class="form-control input-group-prepend"
-                                                   placeholder="输入关键字定位客户名称"
-                                                   name="locateOwnerSearch" autocomplete="off" @input="locateIdOwner"
-                                                   v-model="billInputting.locateOwnerSearch">
-                                            <span class="invalid-feedback" v-if="errors.id_owner"><strong>@{{ errors.id_owner[0] }}</strong></span>
-                                        </div>
-                                    </div>
-                                </td>
-                                <td>
-                                    <div class="form-group mb-0">
-                                        <label for="sender" class="col-form-label text-right">姓名</label>
-                                        <input type="text" class="form-control" :class="[errors.sender?'is-invalid':'']"
-                                               data-focusOrder="5"
-                                               name="sender" id="sender" autocomplete="off"
-                                               v-model="billInputting.sender">
-                                        <span class="invalid-feedback" v-if="errors.sender"><strong>@{{errors.sender[0] }}</strong></span>
-                                    </div>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td>
-                                    <div class="form-group mb-0">
-                                        <label for="logistic_number_return"
-                                               class="col-form-label text-right">退回单号</label>
-                                        <input type="text" class="form-control"
-                                               :class="[errors.logistic_number_return?'is-invalid':'']"
-                                               data-focusOrder="2"
-                                               name="logistic_number_return" id="logistic_number_return"
-                                               autocomplete="off" v-model="billInputting.logistic_number_return"
-                                               @change="logistic_number_returnChange"
-                                               required>
-                                        <span class="invalid-feedback" v-if="errors.logistic_number_return"><strong>@{{errors.logistic_number_return[0] }}</strong></span>
-                                    </div>
-                                </td>
-                                <td>
-                                    <div class="form-group mb-0">
-                                        <label for="fee_collected" class="col-form-label text-right">到付费用</label>
-                                        <input type="text" class="form-control"
-                                               :class="[errors.fee_collected?'is-invalid':'']"
-                                               data-focusOrder=""
-                                               v-model="billInputting.fee_collected" name="fee_collected"
-                                               id="fee_collected" autocomplete="off">
-                                        <span class="invalid-feedback" v-if="errors.fee_collected"><strong>@{{errors.fee_collected[0] }}</strong></span>
-                                    </div>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td>
-                                    <div class="form-group mb-0">
-                                        <label for="id_logistic_return" class="col-form-label text-right">退回公司</label>
-                                        <div class="input-group">
-                                            <select name="id_logistic_return" id="id_logistic_return"
-                                                    class="form-control"
-                                                    data-focusOrder="3"
-                                                    :class="[errors.id_logistic_return?'is-invalid':'']"
-                                                    v-model="billInputting.id_logistic_return" required>
-                                                <option value=""></option>
-                                                <option v-for="logistic in logistics" :value="logistic.id">
-                                                    @{{logistic.name}}
-                                                </option>
-                                            </select>
-                                            <input type="text" class="form-control input-group-prepend"
-                                                   placeholder="输入关键字定位物流公司"
-                                                   name="locateLogisticSearch" autocomplete="off"
-                                                   @input="locateLogistic" v-model="billInputting.locateLogisticSearch">
-                                            <span class="invalid-feedback" v-if="errors.id_logistic_return"><strong>@{{errors.id_logistic_return[0] }}</strong></span>
-                                        </div>
-                                    </div>
-                                </td>
-                                <td>
-                                    <div class="form-group mb-0">
-                                        <label for="order_number" class="col-form-label text-right">订单号</label>
-                                        <input type="text" class="form-control"
-                                               :class="[errors.order_number?'is-invalid':'']"
-                                               data-focusOrder="6"
-                                               name="order_number" id="order_number" autocomplete="off"
-                                               v-model="billInputting.order_number">
-                                        <span class="invalid-feedback" v-if="errors.order_number"><strong>@{{ errors.order_number[0] }}</strong></span>
-                                    </div>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td>
-                                    <div class="form-group mb-0">
-                                        <label for="mobile_sender" class="col-form-label text-right">电话</label>
-                                        <input type="text" class="form-control"
-                                               :class="[errors.mobile_sender?'is-invalid':'']"
-                                               data-focusOrder="4"
-                                               name="mobile_sender" id="mobile_sender" autocomplete="off"
-                                               v-model="billInputting.mobile_sender" required>
-                                        <span class="invalid-feedback" v-if="errors.mobile_sender"><strong>@{{ errors.mobile_sender[0] }}</strong></span>
-                                    </div>
-                                </td>
-                                <td>
-                                    <div class="form-group mb-0">
-                                        <label for="logistic_number" class="col-form-label text-right">原单号</label>
-                                        <button class="btn btn-outline-primary btn-sm"
-                                                @click="billInputting.logistic_number='原单退回'"
-                                                style="transform: scale(0.9)">原单退回
-                                        </button>
-                                        <input type="text" class="form-control"
-                                               :class="[errors.logistic_number?'is-invalid':'']"
-                                               data-focusOrder="7"
-                                               name="logistic_number" id="logistic_number" autocomplete="off"
-                                               v-model="billInputting.logistic_number"
-                                        >
-                                        <span class="invalid-feedback" v-if="errors.logistic_number"><strong>@{{errors.logistic_number[0] }}</strong></span>
-                                    </div>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td>
-                                    <div class="form-group mb-0">
-                                        <label for="bill_remark" class="col-form-label text-right">备注</label>
-                                        <input type="text" class="form-control"
-                                               :class="[errors.bill_remark?'is-invalid':'']"
-                                               data-focusOrder="9"
-                                               name="remark" id="bill_remark" autocomplete="off"
-                                               v-model="billInputting.remark" required>
-                                        <span class="invalid-feedback" v-if="errors.bill_remark"><strong>@{{ errors.remark[0] }}</strong></span>
-                                    </div>
-                                </td>
-                                <td>
-                                    <div class="form-group mb-0">
-                                        <label for="is_loaded" class="col-form-label text-right">是否入库</label>
-                                        <div v-if="status.isLoadSign" class="text-danger">系统标计为入库</div>
-                                        <select name="is_loaded" id="is_loaded" class="form-control"
-                                                :class="[errors.is_loaded?'is-invalid':'']"
-                                                data-focusOrder="8" :disabled="status.lockingIsLoadedInput"
-                                                v-model="billInputting.is_loaded" required>
-                                            <option value="0">否</option>
-                                            <option value="1">是</option>
-                                            <option value="null">无需入库</option>
-                                            <option value="3">上传异常</option>
-                                        </select>
-                                        <span class="invalid-feedback" v-if="errors.is_loaded"><strong>@{{errors.is_loaded[0]}}</strong></span>
-                                    </div>
-                                </td>
-                            </tr>
-                            <tr v-if="billInputting.id_owner==='94'">
-                                <td>
-                                    <div class="form-group mb-0">
-                                        <label for="common_01" class="col-form-label text-right">寄件方省</label>
-                                        <input type="text" class="form-control"
-                                               :class="[errors.common_01?'is-invalid':'']"
-                                               data-focusOrder="10"
-                                               name="common_01" id="common_01" autocomplete="off"
-                                               v-model="billInputting.common_01" required>
-                                        <span class="invalid-feedback" v-if="errors.common_01"><strong>@{{ errors.common_01[0] }}</strong></span>
-                                    </div>
-                                </td>
-                                <td>
-                                    <div class="form-group mb-0">
-                                        <label for="common_02" class="col-form-label text-right">重量</label>
-                                        <input type="text" class="form-control"
-                                               :class="[errors.common_02?'is-invalid':'']"
-                                               data-focusOrder="11"
-                                               name="common_02" id="common_02" autocomplete="off"
-                                               v-model="billInputting.common_02" required>
-                                        <span class="invalid-feedback" v-if="errors.common_02"><strong>@{{ errors.common_02[0] }}</strong></span>
-                                    </div>
-                                </td>
-                            </tr>
-                            <tr>
-                                <td>
-                                    <div class="form-group mb-0 align-items-center row">
-                                        <div class="col-2" v-if="status.billEditing">
-                                            <button class="btn btn-success btn-sm tooltipOn" @click="shiftToCreate"
-                                                    title="点击取消编辑,进入新增状态">取消
-                                            </button>
-                                        </div>
-                                        <div class="col-8" :class="[status.billCreating?'offset-2':'']">
-                                            <input v-if="status.billCreating" type="button"
-                                                   class="btn btn-success form-control" value="提交新条目"
-                                                   @click="commitHeader">
-                                            <input v-if="status.billEditing" type="button"
-                                                   class="btn btn-dark form-control" value="修改"
-                                                   @click="commitEditHeader">
-                                        </div>
-                                    </div>
-                                </td>
-                                <td>
-                                </td>
-                            </tr>
-                        </table>
-                    </div>
-                </div>
-            </div>
-        </div>
+        <h3 class="text-danger"> 当前功能已停用,请转至SWMS系统</h3>
+{{--        <div class="card mb-2">--}}
+{{--            <div style="position: relative" v-if="status.lockingBillPanel">--}}
+{{--                <div style="background-color: #aaa; height: 535px; opacity: 0.5;--}}
+{{--                width:100%;z-index: 9; position: absolute" class="d-flex ">--}}
+{{--                </div>--}}
+{{--                <div style="height: 550px;--}}
+{{--                width:100%;z-index: 10; position: absolute" class="d-flex align-items-center ">--}}
+{{--                    <button class="btn btn-info flex-fill" @click="cancelPackCommitEdit">取消锁定</button>--}}
+{{--                </div>--}}
+{{--            </div>--}}
+{{--            <div class="row">--}}
+{{--                <div class="col-7">--}}
+{{--                    <div class="card-body">--}}
+{{--                        <div class="list-group" style="max-height: 477px;overflow-y: scroll">--}}
+{{--                            <table class="table table-sm table-striped table-info table-hover table-bordered">--}}
+{{--                                <tr>--}}
+{{--                                    <th>创建时间</th>--}}
+{{--                                    <th>客户名称</th>--}}
+{{--                                    <th>退回单号</th>--}}
+{{--                                    <th>退回公司</th>--}}
+{{--                                    <th>姓名</th>--}}
+{{--                                    <th>电话</th>--}}
+{{--                                    <th>到付费用</th>--}}
+{{--                                    <th>订单号</th>--}}
+{{--                                    <th>原单号</th>--}}
+{{--                                    <th>是否入库</th>--}}
+{{--                                    --}}{{--                                    <th>备注</th>--}}
+{{--                                    <th>操作</th>--}}
+{{--                                </tr>--}}
+{{--                                <tr :class="[rejectedBill.isEditing?'bg-info':'']"--}}
+{{--                                    v-for="rejectedBill in rejectedBills" :data-id="rejectedBill.id" @click="editBill">--}}
+{{--                                    <td>@{{rejectedBill.created_at | dateNoYear}}</td>--}}
+{{--                                    <td>@{{rejectedBill.owner_name }}</td>--}}
+{{--                                    <td>@{{rejectedBill.logistic_number_return }}</td>--}}
+{{--                                    <td>@{{rejectedBill.logistic_name}}</td>--}}
+{{--                                    <td>@{{rejectedBill.sender}}</td>--}}
+{{--                                    <td>@{{rejectedBill.mobile_sender}}</td>--}}
+{{--                                    <td>@{{rejectedBill.fee_collected}}</td>--}}
+{{--                                    <td>@{{rejectedBill.order_number}}</td>--}}
+{{--                                    <td>@{{rejectedBill.logistic_number}}</td>--}}
+{{--                                    <td>@{{rejectedBill.is_loaded|isLoaded}}</td>--}}
+{{--                                    --}}{{--                                    <td>@{{rejectedBill.remark}}</td>--}}
+{{--                                    @can('退货管理-删除')--}}
+{{--                                        <td>--}}
+{{--                                            <button class="btn btn-sm btn-outline-danger"--}}
+{{--                                                    @click.stop="deleteBill(rejectedBill)">删--}}
+{{--                                            </button>--}}
+{{--                                        </td>@endcan--}}
+{{--                                </tr>--}}
+{{--                            </table>--}}
+{{--                        </div>--}}
+{{--                    </div>--}}
+{{--                </div>--}}
+{{--                <div class="col-5 disabled">--}}
+{{--                    <div class="card-body ml-n4">--}}
+{{--                        <table class="table table-striped table-sm  table-bordered"--}}
+{{--                               :class="[status.billEditing?'bg-info':'']">--}}
+{{--                            <tr>--}}
+{{--                                <td>--}}
+{{--                                    <div class="form-group mb-0">--}}
+{{--                                        <label for="id_owner" class="col-form-label text-right">客户名称</label>--}}
+{{--                                        <div class="input-group">--}}
+{{--                                            <select name="id_owner" id="id_owner" class="form-control"--}}
+{{--                                                    :class="[errors.id_owner?'is-invalid':'']"--}}
+{{--                                                    v-model="billInputting.id_owner" required data-focusOrder="1">--}}
+{{--                                                <option value=""></option>--}}
+{{--                                                <option v-for="owner in owners" :value="owner.id">@{{ owner.name }}--}}
+{{--                                                </option>--}}
+{{--                                            </select>--}}
+{{--                                            <input type="text" class="form-control input-group-prepend"--}}
+{{--                                                   placeholder="输入关键字定位客户名称"--}}
+{{--                                                   name="locateOwnerSearch" autocomplete="off" @input="locateIdOwner"--}}
+{{--                                                   v-model="billInputting.locateOwnerSearch">--}}
+{{--                                            <span class="invalid-feedback" v-if="errors.id_owner"><strong>@{{ errors.id_owner[0] }}</strong></span>--}}
+{{--                                        </div>--}}
+{{--                                    </div>--}}
+{{--                                </td>--}}
+{{--                                <td>--}}
+{{--                                    <div class="form-group mb-0">--}}
+{{--                                        <label for="sender" class="col-form-label text-right">姓名</label>--}}
+{{--                                        <input type="text" class="form-control" :class="[errors.sender?'is-invalid':'']"--}}
+{{--                                               data-focusOrder="5"--}}
+{{--                                               name="sender" id="sender" autocomplete="off"--}}
+{{--                                               v-model="billInputting.sender">--}}
+{{--                                        <span class="invalid-feedback" v-if="errors.sender"><strong>@{{errors.sender[0] }}</strong></span>--}}
+{{--                                    </div>--}}
+{{--                                </td>--}}
+{{--                            </tr>--}}
+{{--                            <tr>--}}
+{{--                                <td>--}}
+{{--                                    <div class="form-group mb-0">--}}
+{{--                                        <label for="logistic_number_return"--}}
+{{--                                               class="col-form-label text-right">退回单号</label>--}}
+{{--                                        <input type="text" class="form-control"--}}
+{{--                                               :class="[errors.logistic_number_return?'is-invalid':'']"--}}
+{{--                                               data-focusOrder="2"--}}
+{{--                                               name="logistic_number_return" id="logistic_number_return"--}}
+{{--                                               autocomplete="off" v-model="billInputting.logistic_number_return"--}}
+{{--                                               @change="logistic_number_returnChange"--}}
+{{--                                               required>--}}
+{{--                                        <span class="invalid-feedback" v-if="errors.logistic_number_return"><strong>@{{errors.logistic_number_return[0] }}</strong></span>--}}
+{{--                                    </div>--}}
+{{--                                </td>--}}
+{{--                                <td>--}}
+{{--                                    <div class="form-group mb-0">--}}
+{{--                                        <label for="fee_collected" class="col-form-label text-right">到付费用</label>--}}
+{{--                                        <input type="text" class="form-control"--}}
+{{--                                               :class="[errors.fee_collected?'is-invalid':'']"--}}
+{{--                                               data-focusOrder=""--}}
+{{--                                               v-model="billInputting.fee_collected" name="fee_collected"--}}
+{{--                                               id="fee_collected" autocomplete="off">--}}
+{{--                                        <span class="invalid-feedback" v-if="errors.fee_collected"><strong>@{{errors.fee_collected[0] }}</strong></span>--}}
+{{--                                    </div>--}}
+{{--                                </td>--}}
+{{--                            </tr>--}}
+{{--                            <tr>--}}
+{{--                                <td>--}}
+{{--                                    <div class="form-group mb-0">--}}
+{{--                                        <label for="id_logistic_return" class="col-form-label text-right">退回公司</label>--}}
+{{--                                        <div class="input-group">--}}
+{{--                                            <select name="id_logistic_return" id="id_logistic_return"--}}
+{{--                                                    class="form-control"--}}
+{{--                                                    data-focusOrder="3"--}}
+{{--                                                    :class="[errors.id_logistic_return?'is-invalid':'']"--}}
+{{--                                                    v-model="billInputting.id_logistic_return" required>--}}
+{{--                                                <option value=""></option>--}}
+{{--                                                <option v-for="logistic in logistics" :value="logistic.id">--}}
+{{--                                                    @{{logistic.name}}--}}
+{{--                                                </option>--}}
+{{--                                            </select>--}}
+{{--                                            <input type="text" class="form-control input-group-prepend"--}}
+{{--                                                   placeholder="输入关键字定位物流公司"--}}
+{{--                                                   name="locateLogisticSearch" autocomplete="off"--}}
+{{--                                                   @input="locateLogistic" v-model="billInputting.locateLogisticSearch">--}}
+{{--                                            <span class="invalid-feedback" v-if="errors.id_logistic_return"><strong>@{{errors.id_logistic_return[0] }}</strong></span>--}}
+{{--                                        </div>--}}
+{{--                                    </div>--}}
+{{--                                </td>--}}
+{{--                                <td>--}}
+{{--                                    <div class="form-group mb-0">--}}
+{{--                                        <label for="order_number" class="col-form-label text-right">订单号</label>--}}
+{{--                                        <input type="text" class="form-control"--}}
+{{--                                               :class="[errors.order_number?'is-invalid':'']"--}}
+{{--                                               data-focusOrder="6"--}}
+{{--                                               name="order_number" id="order_number" autocomplete="off"--}}
+{{--                                               v-model="billInputting.order_number">--}}
+{{--                                        <span class="invalid-feedback" v-if="errors.order_number"><strong>@{{ errors.order_number[0] }}</strong></span>--}}
+{{--                                    </div>--}}
+{{--                                </td>--}}
+{{--                            </tr>--}}
+{{--                            <tr>--}}
+{{--                                <td>--}}
+{{--                                    <div class="form-group mb-0">--}}
+{{--                                        <label for="mobile_sender" class="col-form-label text-right">电话</label>--}}
+{{--                                        <input type="text" class="form-control"--}}
+{{--                                               :class="[errors.mobile_sender?'is-invalid':'']"--}}
+{{--                                               data-focusOrder="4"--}}
+{{--                                               name="mobile_sender" id="mobile_sender" autocomplete="off"--}}
+{{--                                               v-model="billInputting.mobile_sender" required>--}}
+{{--                                        <span class="invalid-feedback" v-if="errors.mobile_sender"><strong>@{{ errors.mobile_sender[0] }}</strong></span>--}}
+{{--                                    </div>--}}
+{{--                                </td>--}}
+{{--                                <td>--}}
+{{--                                    <div class="form-group mb-0">--}}
+{{--                                        <label for="logistic_number" class="col-form-label text-right">原单号</label>--}}
+{{--                                        <button class="btn btn-outline-primary btn-sm"--}}
+{{--                                                @click="billInputting.logistic_number='原单退回'"--}}
+{{--                                                style="transform: scale(0.9)">原单退回--}}
+{{--                                        </button>--}}
+{{--                                        <input type="text" class="form-control"--}}
+{{--                                               :class="[errors.logistic_number?'is-invalid':'']"--}}
+{{--                                               data-focusOrder="7"--}}
+{{--                                               name="logistic_number" id="logistic_number" autocomplete="off"--}}
+{{--                                               v-model="billInputting.logistic_number"--}}
+{{--                                        >--}}
+{{--                                        <span class="invalid-feedback" v-if="errors.logistic_number"><strong>@{{errors.logistic_number[0] }}</strong></span>--}}
+{{--                                    </div>--}}
+{{--                                </td>--}}
+{{--                            </tr>--}}
+{{--                            <tr>--}}
+{{--                                <td>--}}
+{{--                                    <div class="form-group mb-0">--}}
+{{--                                        <label for="bill_remark" class="col-form-label text-right">备注</label>--}}
+{{--                                        <input type="text" class="form-control"--}}
+{{--                                               :class="[errors.bill_remark?'is-invalid':'']"--}}
+{{--                                               data-focusOrder="9"--}}
+{{--                                               name="remark" id="bill_remark" autocomplete="off"--}}
+{{--                                               v-model="billInputting.remark" required>--}}
+{{--                                        <span class="invalid-feedback" v-if="errors.bill_remark"><strong>@{{ errors.remark[0] }}</strong></span>--}}
+{{--                                    </div>--}}
+{{--                                </td>--}}
+{{--                                <td>--}}
+{{--                                    <div class="form-group mb-0">--}}
+{{--                                        <label for="is_loaded" class="col-form-label text-right">是否入库</label>--}}
+{{--                                        <div v-if="status.isLoadSign" class="text-danger">系统标计为入库</div>--}}
+{{--                                        <select name="is_loaded" id="is_loaded" class="form-control"--}}
+{{--                                                :class="[errors.is_loaded?'is-invalid':'']"--}}
+{{--                                                data-focusOrder="8" :disabled="status.lockingIsLoadedInput"--}}
+{{--                                                v-model="billInputting.is_loaded" required>--}}
+{{--                                            <option value="0">否</option>--}}
+{{--                                            <option value="1">是</option>--}}
+{{--                                            <option value="null">无需入库</option>--}}
+{{--                                            <option value="3">上传异常</option>--}}
+{{--                                        </select>--}}
+{{--                                        <span class="invalid-feedback" v-if="errors.is_loaded"><strong>@{{errors.is_loaded[0]}}</strong></span>--}}
+{{--                                    </div>--}}
+{{--                                </td>--}}
+{{--                            </tr>--}}
+{{--                            <tr v-if="billInputting.id_owner==='94'">--}}
+{{--                                <td>--}}
+{{--                                    <div class="form-group mb-0">--}}
+{{--                                        <label for="common_01" class="col-form-label text-right">寄件方省</label>--}}
+{{--                                        <input type="text" class="form-control"--}}
+{{--                                               :class="[errors.common_01?'is-invalid':'']"--}}
+{{--                                               data-focusOrder="10"--}}
+{{--                                               name="common_01" id="common_01" autocomplete="off"--}}
+{{--                                               v-model="billInputting.common_01" required>--}}
+{{--                                        <span class="invalid-feedback" v-if="errors.common_01"><strong>@{{ errors.common_01[0] }}</strong></span>--}}
+{{--                                    </div>--}}
+{{--                                </td>--}}
+{{--                                <td>--}}
+{{--                                    <div class="form-group mb-0">--}}
+{{--                                        <label for="common_02" class="col-form-label text-right">重量</label>--}}
+{{--                                        <input type="text" class="form-control"--}}
+{{--                                               :class="[errors.common_02?'is-invalid':'']"--}}
+{{--                                               data-focusOrder="11"--}}
+{{--                                               name="common_02" id="common_02" autocomplete="off"--}}
+{{--                                               v-model="billInputting.common_02" required>--}}
+{{--                                        <span class="invalid-feedback" v-if="errors.common_02"><strong>@{{ errors.common_02[0] }}</strong></span>--}}
+{{--                                    </div>--}}
+{{--                                </td>--}}
+{{--                            </tr>--}}
+{{--                            <tr>--}}
+{{--                                <td>--}}
+{{--                                    <div class="form-group mb-0 align-items-center row">--}}
+{{--                                        <div class="col-2" v-if="status.billEditing">--}}
+{{--                                            <button class="btn btn-success btn-sm tooltipOn" @click="shiftToCreate"--}}
+{{--                                                    title="点击取消编辑,进入新增状态">取消--}}
+{{--                                            </button>--}}
+{{--                                        </div>--}}
+{{--                                        <div class="col-8" :class="[status.billCreating?'offset-2':'']">--}}
+{{--                                            <input v-if="status.billCreating" type="button"--}}
+{{--                                                   class="btn btn-success form-control" value="提交新条目"--}}
+{{--                                                   @click="commitHeader">--}}
+{{--                                            <input v-if="status.billEditing" type="button"--}}
+{{--                                                   class="btn btn-dark form-control" value="修改"--}}
+{{--                                                   @click="commitEditHeader">--}}
+{{--                                        </div>--}}
+{{--                                    </div>--}}
+{{--                                </td>--}}
+{{--                                <td>--}}
+{{--                                </td>--}}
+{{--                            </tr>--}}
+{{--                        </table>--}}
+{{--                    </div>--}}
+{{--                </div>--}}
+{{--            </div>--}}
+{{--        </div>--}}
 
 
         <div class="card" v-if="status.editingBill">

+ 154 - 153
resources/views/store/deliveryAppointment/appointment.blade.php

@@ -3,159 +3,160 @@
 
 @section('content')
     <div class="container-fluid" id="container">
-        <div class="card">
-            <div class="card-body row">
-                <div class="offset-2 col-8">
-                    <!--                   <div class="card">
-                                           <div class="card-header">
-                                               <div class="row">
-                                                   <label class="col-2">
-                                                       <label class="text-danger font-weight-bold ml-2 h4">*</label>
-                                                   </label>
-                                                   <label class="col-2">车牌号</label>
-                                                   <label class="col-2">车型</label>
-                                                   <label class="col-2">司机姓名</label>
-                                                   <label class="col-3">司机电话</label>
-                                                   <label class="col-1">
-                                                       <span class="fa fa-plus cursor-pointer text-primary" @click="addCar()">增加</span>
-                                                   </label>
-                                               </div>
-                                           </div>
-                                           <div class="card-body">
-                                               <div class="row" v-for="(car,i) in model.cars">
-                                                   <label class="col-2">车辆-@{{ i+1 }}</label>
-                                                   <label class="col-2">
-                                                       <input type="text" class="form-control" v-model="car.license_plate_number" :class="errors['cars.'+i+'.license_plate_number'] ? 'is-invalid' : ''">
-                                                   </label>
-                                                   <label class="col-2">
-                                                       <div class="dropdown">
-                                                           <input type="text" class="form-control" v-model="car.car_name" :id="'car-'+i" @input="searchCar(car.car_name)"
-                                                                  data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" @click="searchInit()">
-                                                           <div class="dropdown-menu" :aria-labelledby="'car-'+i" v-show="haystack.length>0">
-                                                               <span class="row offset-1 text-secondary" v-for="c in haystack" @click.stop="selectCar(c,i)">@{{ c.name }}<br></span>
-                                                           </div>
-                                                       </div>
-                                                   </label>
-                                                   <label class="col-2">
-                                                       <input type="text" class="form-control" v-model="car.driver_name">
-                                                   </label>
-                                                   <label class="col-3">
-                                                       <input type="text" class="form-control" v-model="car.driver_phone">
-                                                   </label>
-                                                   <label class="col-1" v-if="i!==0">
-                                                       <span class="h4 font-weight-bold cursor-pointer text-danger" @click="delCar(i)">&times;</span>
-                                                   </label>
-                                                   <label v-if="errors['cars.'+i+'.license_plate_number']" class="col-2 offset-2 text-danger font-weight-bold small">
-                                                       @{{ errors['cars.'+i+'.license_plate_number'][0] }}
-                                                   </label>
-                                               </div>
-                                           </div>
-                                       </div>-->
-                    <div class="row ml-1">
-                        <div class="col-6">
-                            <div class="row mt-4">
-                                <label class="col-3" for="ownerId"><b class="text-danger">*&nbsp;</b>货主</label>
-                                <select id="ownerId" v-model="model.owner_id" class="col-5 form-control" :class="errors.owner_id ? 'is-invalid' : ''">
-                                    <option v-for="owner in owners" :value="owner.id">@{{ owner.name }}</option>
-                                </select>
-                                <label class="col-4"><input class="form-control form-control-sm rounded-pill" placeholder="搜索货主" @input="seekOwner($event)"></label>
-                            </div>
-                            <label class="row mt-0 mb-0 ml-1" v-if="errors.owner_id">
-                                <label class="offset-2 text-danger font-weight-bold small">@{{ errors.owner_id[0] }}</label>
-                            </label>
-                            <div class="row mt-2">
-                                <label class="col-3" for="procurementNumber">采购单号</label>
-                                <input class="col-9 form-control" type="text" id="procurementNumber" v-model="model.procurement_number" :class="errors.procurement_number ? 'is-invalid' : ''">
-                            </div>
-                            <div class="row mt-2">
-                                <label class="col-3" for="asnNumber"><b class="text-danger">*&nbsp;</b>ASN单号</label>
-                                <input class="col-9 form-control" placeholder="可以输入多个,使用空格或逗号分隔" @blur="verifyASN()"
-                                       type="text" id="asnNumber" v-model="model.asn_number" :class="errors.asn_number ? 'is-invalid' : ''">
-                            </div>
-                            <div class="row mt-2">
-                                <label class="col-3" for="warehouse"><b class="text-danger">*&nbsp;</b>仓库</label>
-                                <select id="warehouse" v-model="model.warehouse_id" class="col-6 form-control" :class="errors.warehouse_id ? 'is-invalid' : ''">
-                                    <option v-for="warehouse in warehouses" :value="warehouse.id">@{{ warehouse.name }}</option>
-                                </select>
-                            </div>
-                            <label class="row mt-0 mb-0" v-if="errors.warehouse_id">
-                                <label class="offset-2 text-danger font-weight-bold small">@{{ errors.warehouse_id[0] }}</label>
-                            </label>
-                            <div class="row mt-2">
-                                <label class="col-3" for="cubic_meter"><b class="text-danger">*&nbsp;</b>立方</label>
-                                <input class="col-3 form-control" type="number" step="0.01" min="0" id="cubic_meter" v-model="model.cubic_meter" :class="errors.cubic_meter ? 'is-invalid' : ''">
-                                <label class="col-2 offset-1" for="tonne"><b class="text-danger">*&nbsp;</b>吨</label>
-                                <input class="col-3 form-control" type="number" step="0.01" min="0" id="tonne" v-model="model.tonne" :class="errors.tonne ? 'is-invalid' : ''">
-                            </div>
-                            <label class="row mt-0 mb-0" v-if="errors.cubic_meter || errors.tonne">
-                                <label class="offset-2 text-danger col-3 small"><b v-if="errors.cubic_meter">@{{ errors.cubic_meter[0] }}</b></label>
-                                <label class="offset-3 text-danger font-weight-bold small" v-if="errors.tonne">@{{ errors.tonne[0] }}</label>
-                            </label>
-                        </div>
-                        <div class="col-5 offset-1">
-                            <div class="row mt-4">
-                                <label class="col-3" for="isToC">输入车型</label>
-                                <input content="col-4" id="isToC" type="checkbox" class="switch" v-model="model.isToC">
-                            </div>
-                            <div v-if="model.isToC">
-                                <div class="row mt-2">
-                                    <label class="col-3" for="car_name">车型</label>
-                                    <div class="dropdown col-6 d-inline-block p-0">
-                                        <input type="text" class="form-control" v-model="model.cars[0].car_name" id="car-0" @input="searchCar(model.cars[0].car_name)"
-                                               data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" @click="searchInit()">
-                                        <div class="dropdown-menu" aria-labelledby="car-0" v-show="haystack.length>0">
-                                            <span class="row offset-1 text-secondary" v-for="c in haystack" @click.stop="selectCar(c,0)">@{{ c.name }}<br></span>
-                                        </div>
-                                    </div>
-                                </div>
-                                <div class="row mt-2">
-                                    <label class="col-3" for="license_plate_number">车牌号</label>
-                                    <input type="text" id="license_plate_number" class="col-9 form-control" v-model="model.cars[0].license_plate_number" :class="errors['cars.0.license_plate_number'] ? 'is-invalid' : ''">
-                                </div>
-                            </div>
-                            <div v-else>
-                                <div class="row mt-2">
-                                    <label class="col-3" for="logistic">快递公司</label>
-                                    <select id="logistic" v-model="model.logistic_id" class="col-6 form-control" :class="errors.logistic_id ? 'is-invalid' : ''">
-                                        <option v-for="logistic in logistics" :value="logistic.id">@{{ logistic.name }}</option>
-                                    </select>
-                                </div>
-                                <div class="row mt-2">
-                                    <label class="col-3" for="logistic_number">快递单号</label>
-                                    <input class="col-9 form-control" type="text" id="logistic_number" v-model="model.logistic_number" :class="errors.logistic_number ? 'is-invalid' : ''">
-                                </div>
-                            </div>
-                            <div class="row mt-2">
-                                <label class="col-3" for="box_amount">箱数</label>
-                                <input class="col-6 form-control" step="1" min="0" type="number" id="box_amount" v-model="model.box_amount" :class="errors.box_amount ? 'is-invalid' : ''">
-                            </div>
-                            <label class="row mt-0 mb-0" v-if="errors.box_amount">
-                                <label class="offset-2 text-danger font-weight-bold small">@{{ errors.box_amount[0] }}</label>
-                            </label>
-                            <div class="row mt-2">
-                                <label class="col-3" for="isUpload">上传明细单</label>
-                                <input content="col-4" id="isUpload" type="checkbox" class="switch" v-model="model.is_upload">
-                                <button id="openFile" type="button" class="col-3 offset-1 btn btn-sm btn-info text-white"
-                                        title="表头必须包含:商品名称 数量 条码"
-                                        :data-toggle="errors.details ? 'popover' : 'tooltip'"
-                                        v-show="model.is_upload" @click="openFile()">
-                                    <span class="fa fa-cloud-upload"></span> 选择文件</button>
-                                <span v-if="model.is_upload" class="text-secondary mt-1">&nbsp;@{{ fileName }}</span>
-                                <label hidden><input type="file" id="file" accept=".csv, .xlsx, .xls" @change="selectedFile($event)"></label>
-                            </div>
-                            <div class="row mt-2">
-                                <label class="col-3" for="remark">预约备注</label>
-                                <textarea class="col-9 form-control" v-model="model.remark" id="remark"></textarea>
-                            </div>
-                        </div>
-                    </div>
-                    <div class="row mt-4 ml-1">
-                        <button type="button" class="btn btn-success col-8 offset-2" @click="submit()">提 交 预 约</button>
-                    </div>
-                </div>
-                @include("store.deliveryAppointment._selectDate")
-            </div>
-        </div>
+        <h3 class="text-danger"> 当前功能已停用,请转至SWMS系统</h3>
+{{--        <div class="card">--}}
+{{--            <div class="card-body row">--}}
+{{--                <div class="offset-2 col-8">--}}
+{{--                    <!--                   <div class="card">--}}
+{{--                                           <div class="card-header">--}}
+{{--                                               <div class="row">--}}
+{{--                                                   <label class="col-2">--}}
+{{--                                                       <label class="text-danger font-weight-bold ml-2 h4">*</label>--}}
+{{--                                                   </label>--}}
+{{--                                                   <label class="col-2">车牌号</label>--}}
+{{--                                                   <label class="col-2">车型</label>--}}
+{{--                                                   <label class="col-2">司机姓名</label>--}}
+{{--                                                   <label class="col-3">司机电话</label>--}}
+{{--                                                   <label class="col-1">--}}
+{{--                                                       <span class="fa fa-plus cursor-pointer text-primary" @click="addCar()">增加</span>--}}
+{{--                                                   </label>--}}
+{{--                                               </div>--}}
+{{--                                           </div>--}}
+{{--                                           <div class="card-body">--}}
+{{--                                               <div class="row" v-for="(car,i) in model.cars">--}}
+{{--                                                   <label class="col-2">车辆-@{{ i+1 }}</label>--}}
+{{--                                                   <label class="col-2">--}}
+{{--                                                       <input type="text" class="form-control" v-model="car.license_plate_number" :class="errors['cars.'+i+'.license_plate_number'] ? 'is-invalid' : ''">--}}
+{{--                                                   </label>--}}
+{{--                                                   <label class="col-2">--}}
+{{--                                                       <div class="dropdown">--}}
+{{--                                                           <input type="text" class="form-control" v-model="car.car_name" :id="'car-'+i" @input="searchCar(car.car_name)"--}}
+{{--                                                                  data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" @click="searchInit()">--}}
+{{--                                                           <div class="dropdown-menu" :aria-labelledby="'car-'+i" v-show="haystack.length>0">--}}
+{{--                                                               <span class="row offset-1 text-secondary" v-for="c in haystack" @click.stop="selectCar(c,i)">@{{ c.name }}<br></span>--}}
+{{--                                                           </div>--}}
+{{--                                                       </div>--}}
+{{--                                                   </label>--}}
+{{--                                                   <label class="col-2">--}}
+{{--                                                       <input type="text" class="form-control" v-model="car.driver_name">--}}
+{{--                                                   </label>--}}
+{{--                                                   <label class="col-3">--}}
+{{--                                                       <input type="text" class="form-control" v-model="car.driver_phone">--}}
+{{--                                                   </label>--}}
+{{--                                                   <label class="col-1" v-if="i!==0">--}}
+{{--                                                       <span class="h4 font-weight-bold cursor-pointer text-danger" @click="delCar(i)">&times;</span>--}}
+{{--                                                   </label>--}}
+{{--                                                   <label v-if="errors['cars.'+i+'.license_plate_number']" class="col-2 offset-2 text-danger font-weight-bold small">--}}
+{{--                                                       @{{ errors['cars.'+i+'.license_plate_number'][0] }}--}}
+{{--                                                   </label>--}}
+{{--                                               </div>--}}
+{{--                                           </div>--}}
+{{--                                       </div>-->--}}
+{{--                    <div class="row ml-1">--}}
+{{--                        <div class="col-6">--}}
+{{--                            <div class="row mt-4">--}}
+{{--                                <label class="col-3" for="ownerId"><b class="text-danger">*&nbsp;</b>货主</label>--}}
+{{--                                <select id="ownerId" v-model="model.owner_id" class="col-5 form-control" :class="errors.owner_id ? 'is-invalid' : ''">--}}
+{{--                                    <option v-for="owner in owners" :value="owner.id">@{{ owner.name }}</option>--}}
+{{--                                </select>--}}
+{{--                                <label class="col-4"><input class="form-control form-control-sm rounded-pill" placeholder="搜索货主" @input="seekOwner($event)"></label>--}}
+{{--                            </div>--}}
+{{--                            <label class="row mt-0 mb-0 ml-1" v-if="errors.owner_id">--}}
+{{--                                <label class="offset-2 text-danger font-weight-bold small">@{{ errors.owner_id[0] }}</label>--}}
+{{--                            </label>--}}
+{{--                            <div class="row mt-2">--}}
+{{--                                <label class="col-3" for="procurementNumber">采购单号</label>--}}
+{{--                                <input class="col-9 form-control" type="text" id="procurementNumber" v-model="model.procurement_number" :class="errors.procurement_number ? 'is-invalid' : ''">--}}
+{{--                            </div>--}}
+{{--                            <div class="row mt-2">--}}
+{{--                                <label class="col-3" for="asnNumber"><b class="text-danger">*&nbsp;</b>ASN单号</label>--}}
+{{--                                <input class="col-9 form-control" placeholder="可以输入多个,使用空格或逗号分隔" @blur="verifyASN()"--}}
+{{--                                       type="text" id="asnNumber" v-model="model.asn_number" :class="errors.asn_number ? 'is-invalid' : ''">--}}
+{{--                            </div>--}}
+{{--                            <div class="row mt-2">--}}
+{{--                                <label class="col-3" for="warehouse"><b class="text-danger">*&nbsp;</b>仓库</label>--}}
+{{--                                <select id="warehouse" v-model="model.warehouse_id" class="col-6 form-control" :class="errors.warehouse_id ? 'is-invalid' : ''">--}}
+{{--                                    <option v-for="warehouse in warehouses" :value="warehouse.id">@{{ warehouse.name }}</option>--}}
+{{--                                </select>--}}
+{{--                            </div>--}}
+{{--                            <label class="row mt-0 mb-0" v-if="errors.warehouse_id">--}}
+{{--                                <label class="offset-2 text-danger font-weight-bold small">@{{ errors.warehouse_id[0] }}</label>--}}
+{{--                            </label>--}}
+{{--                            <div class="row mt-2">--}}
+{{--                                <label class="col-3" for="cubic_meter"><b class="text-danger">*&nbsp;</b>立方</label>--}}
+{{--                                <input class="col-3 form-control" type="number" step="0.01" min="0" id="cubic_meter" v-model="model.cubic_meter" :class="errors.cubic_meter ? 'is-invalid' : ''">--}}
+{{--                                <label class="col-2 offset-1" for="tonne"><b class="text-danger">*&nbsp;</b>吨</label>--}}
+{{--                                <input class="col-3 form-control" type="number" step="0.01" min="0" id="tonne" v-model="model.tonne" :class="errors.tonne ? 'is-invalid' : ''">--}}
+{{--                            </div>--}}
+{{--                            <label class="row mt-0 mb-0" v-if="errors.cubic_meter || errors.tonne">--}}
+{{--                                <label class="offset-2 text-danger col-3 small"><b v-if="errors.cubic_meter">@{{ errors.cubic_meter[0] }}</b></label>--}}
+{{--                                <label class="offset-3 text-danger font-weight-bold small" v-if="errors.tonne">@{{ errors.tonne[0] }}</label>--}}
+{{--                            </label>--}}
+{{--                        </div>--}}
+{{--                        <div class="col-5 offset-1">--}}
+{{--                            <div class="row mt-4">--}}
+{{--                                <label class="col-3" for="isToC">输入车型</label>--}}
+{{--                                <input content="col-4" id="isToC" type="checkbox" class="switch" v-model="model.isToC">--}}
+{{--                            </div>--}}
+{{--                            <div v-if="model.isToC">--}}
+{{--                                <div class="row mt-2">--}}
+{{--                                    <label class="col-3" for="car_name">车型</label>--}}
+{{--                                    <div class="dropdown col-6 d-inline-block p-0">--}}
+{{--                                        <input type="text" class="form-control" v-model="model.cars[0].car_name" id="car-0" @input="searchCar(model.cars[0].car_name)"--}}
+{{--                                               data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" @click="searchInit()">--}}
+{{--                                        <div class="dropdown-menu" aria-labelledby="car-0" v-show="haystack.length>0">--}}
+{{--                                            <span class="row offset-1 text-secondary" v-for="c in haystack" @click.stop="selectCar(c,0)">@{{ c.name }}<br></span>--}}
+{{--                                        </div>--}}
+{{--                                    </div>--}}
+{{--                                </div>--}}
+{{--                                <div class="row mt-2">--}}
+{{--                                    <label class="col-3" for="license_plate_number">车牌号</label>--}}
+{{--                                    <input type="text" id="license_plate_number" class="col-9 form-control" v-model="model.cars[0].license_plate_number" :class="errors['cars.0.license_plate_number'] ? 'is-invalid' : ''">--}}
+{{--                                </div>--}}
+{{--                            </div>--}}
+{{--                            <div v-else>--}}
+{{--                                <div class="row mt-2">--}}
+{{--                                    <label class="col-3" for="logistic">快递公司</label>--}}
+{{--                                    <select id="logistic" v-model="model.logistic_id" class="col-6 form-control" :class="errors.logistic_id ? 'is-invalid' : ''">--}}
+{{--                                        <option v-for="logistic in logistics" :value="logistic.id">@{{ logistic.name }}</option>--}}
+{{--                                    </select>--}}
+{{--                                </div>--}}
+{{--                                <div class="row mt-2">--}}
+{{--                                    <label class="col-3" for="logistic_number">快递单号</label>--}}
+{{--                                    <input class="col-9 form-control" type="text" id="logistic_number" v-model="model.logistic_number" :class="errors.logistic_number ? 'is-invalid' : ''">--}}
+{{--                                </div>--}}
+{{--                            </div>--}}
+{{--                            <div class="row mt-2">--}}
+{{--                                <label class="col-3" for="box_amount">箱数</label>--}}
+{{--                                <input class="col-6 form-control" step="1" min="0" type="number" id="box_amount" v-model="model.box_amount" :class="errors.box_amount ? 'is-invalid' : ''">--}}
+{{--                            </div>--}}
+{{--                            <label class="row mt-0 mb-0" v-if="errors.box_amount">--}}
+{{--                                <label class="offset-2 text-danger font-weight-bold small">@{{ errors.box_amount[0] }}</label>--}}
+{{--                            </label>--}}
+{{--                            <div class="row mt-2">--}}
+{{--                                <label class="col-3" for="isUpload">上传明细单</label>--}}
+{{--                                <input content="col-4" id="isUpload" type="checkbox" class="switch" v-model="model.is_upload">--}}
+{{--                                <button id="openFile" type="button" class="col-3 offset-1 btn btn-sm btn-info text-white"--}}
+{{--                                        title="表头必须包含:商品名称 数量 条码"--}}
+{{--                                        :data-toggle="errors.details ? 'popover' : 'tooltip'"--}}
+{{--                                        v-show="model.is_upload" @click="openFile()">--}}
+{{--                                    <span class="fa fa-cloud-upload"></span> 选择文件</button>--}}
+{{--                                <span v-if="model.is_upload" class="text-secondary mt-1">&nbsp;@{{ fileName }}</span>--}}
+{{--                                <label hidden><input type="file" id="file" accept=".csv, .xlsx, .xls" @change="selectedFile($event)"></label>--}}
+{{--                            </div>--}}
+{{--                            <div class="row mt-2">--}}
+{{--                                <label class="col-3" for="remark">预约备注</label>--}}
+{{--                                <textarea class="col-9 form-control" v-model="model.remark" id="remark"></textarea>--}}
+{{--                            </div>--}}
+{{--                        </div>--}}
+{{--                    </div>--}}
+{{--                    <div class="row mt-4 ml-1">--}}
+{{--                        <button type="button" class="btn btn-success col-8 offset-2" @click="submit()">提 交 预 约</button>--}}
+{{--                    </div>--}}
+{{--                </div>--}}
+{{--                @include("store.deliveryAppointment._selectDate")--}}
+{{--            </div>--}}
+{{--        </div>--}}
     </div>
 @stop
 

+ 358 - 356
resources/views/store/receivingTasks/create.blade.php

@@ -6,378 +6,380 @@
 @endsection
 
 @section('content')
+    <h3 class="text-danger"> 当前功能已停用,请转至SWMS系统</h3>
     <div id="list" class="d-none">
-        <div class="container-fluid ">
-            <div class="card">
-                <div class="card-body">
-                    <form name="receiving-task-form" id="receiving-task-form">
-                        <div class="form-group row">
-                            <div class="form-inline col-4 row">
-                                <label class="col-4 col-form-label text-right  d-inline-block  text-primary"
-                                       for="warehouse_id">
-                                    <span class="text-danger">*</span>
-                                    仓库
-                                </label>
-                                <div class="form-inline col-8">
-                                    <select class="form-control form-control-sm col-12" name="warehouse_id"
-                                            @change="clearError('warehouse_id')"
-                                            id="warehouse_id"
-                                            :class="{'is-invalid':errors.warehouse_id}"
-                                            v-model="receiving_task.warehouse_id">
-                                        <option v-for="item in ware_house"
-                                                :value="item.value"
-                                                v-text="item.name"></option>
-                                    </select>
-                                    <div id="validation-warehouse" class="invalid-feedback"
-                                         v-show="errors.warehouse_id">
-                                        <span v-text="errors.warehouse_id"></span>
-                                    </div>
-                                </div>
-                            </div>
-                            <div class="form-inline col-4 row">
-                                <label class="col-4 col-form-label text-right  d-inline-block  text-primary"
-                                       for="for_single_member">
-                                    <span class="text-danger">*</span>
-                                    投单员</label>
-                                <div class="form-inline col-8">
-                                    <input type="text" class="form-control form-control-sm col-12" placeholder=""
-                                           id="for_single_member" name="for_single_member"
-                                           :class="{'is-invalid':errors.for_single_member}"
-                                           @change="clearError('for_single_member')"
-                                           v-model="receiving_task.for_single_member">
-                                    <div id="validation-for-single-member" class="invalid-feedback"
-                                         v-show="errors.for_single_member">
-                                        <span v-text="errors.for_single_member"></span>
-                                    </div>
-                                </div>
-                            </div>
-                            <div class="form-inline col-4 row">
-                                <label class="col-4 col-form-label text-right  d-inline-block  text-primary"
-                                       for="owner_id">
-                                    <span class="text-danger">*</span>
-                                    货主</label>
-                                <div class="form-inline col-8">
-                                    <select class="form-control form-control-sm col-8" name="owner_id" id="owner_id"
-                                            :class="{'is-invalid':errors.owner_id}"
-                                            @change="getASNDetails"
-                                            @input="clearError('owner_id')"
-                                            v-model="receiving_task.owner_id">
-                                        <option v-for="item in filterOwners" :value="item.id" v-text="item.name"></option>
-                                    </select>
-                                    <div id="validation-owner-id" class="invalid-feedback" v-show="errors.owner_id">
-                                        <span v-text="errors.owner_id"></span>
-                                    </div>
-                                    <div class="form-inline col-3">
-                                        <input type="text" name="owner_search" id="owner_search" v-model="owner_search" class="form-control form-control-sm">
-                                    </div>
-                                </div>
 
-                            </div>
-                        </div>
+{{--        <div class="container-fluid ">--}}
+{{--            <div class="card">--}}
+{{--                <div class="card-body">--}}
+{{--                    <form name="receiving-task-form" id="receiving-task-form">--}}
+{{--                        <div class="form-group row">--}}
+{{--                            <div class="form-inline col-4 row">--}}
+{{--                                <label class="col-4 col-form-label text-right  d-inline-block  text-primary"--}}
+{{--                                       for="warehouse_id">--}}
+{{--                                    <span class="text-danger">*</span>--}}
+{{--                                    仓库--}}
+{{--                                </label>--}}
+{{--                                <div class="form-inline col-8">--}}
+{{--                                    <select class="form-control form-control-sm col-12" name="warehouse_id"--}}
+{{--                                            @change="clearError('warehouse_id')"--}}
+{{--                                            id="warehouse_id"--}}
+{{--                                            :class="{'is-invalid':errors.warehouse_id}"--}}
+{{--                                            v-model="receiving_task.warehouse_id">--}}
+{{--                                        <option v-for="item in ware_house"--}}
+{{--                                                :value="item.value"--}}
+{{--                                                v-text="item.name"></option>--}}
+{{--                                    </select>--}}
+{{--                                    <div id="validation-warehouse" class="invalid-feedback"--}}
+{{--                                         v-show="errors.warehouse_id">--}}
+{{--                                        <span v-text="errors.warehouse_id"></span>--}}
+{{--                                    </div>--}}
+{{--                                </div>--}}
+{{--                            </div>--}}
+{{--                            <div class="form-inline col-4 row">--}}
+{{--                                <label class="col-4 col-form-label text-right  d-inline-block  text-primary"--}}
+{{--                                       for="for_single_member">--}}
+{{--                                    <span class="text-danger">*</span>--}}
+{{--                                    投单员</label>--}}
+{{--                                <div class="form-inline col-8">--}}
+{{--                                    <input type="text" class="form-control form-control-sm col-12" placeholder=""--}}
+{{--                                           id="for_single_member" name="for_single_member"--}}
+{{--                                           :class="{'is-invalid':errors.for_single_member}"--}}
+{{--                                           @change="clearError('for_single_member')"--}}
+{{--                                           v-model="receiving_task.for_single_member">--}}
+{{--                                    <div id="validation-for-single-member" class="invalid-feedback"--}}
+{{--                                         v-show="errors.for_single_member">--}}
+{{--                                        <span v-text="errors.for_single_member"></span>--}}
+{{--                                    </div>--}}
+{{--                                </div>--}}
+{{--                            </div>--}}
+{{--                            <div class="form-inline col-4 row">--}}
+{{--                                <label class="col-4 col-form-label text-right  d-inline-block  text-primary"--}}
+{{--                                       for="owner_id">--}}
+{{--                                    <span class="text-danger">*</span>--}}
+{{--                                    货主</label>--}}
+{{--                                <div class="form-inline col-8">--}}
+{{--                                    <select class="form-control form-control-sm col-8" name="owner_id" id="owner_id"--}}
+{{--                                            :class="{'is-invalid':errors.owner_id}"--}}
+{{--                                            @change="getASNDetails"--}}
+{{--                                            @input="clearError('owner_id')"--}}
+{{--                                            v-model="receiving_task.owner_id">--}}
+{{--                                        <option v-for="item in filterOwners" :value="item.id" v-text="item.name"></option>--}}
+{{--                                    </select>--}}
+{{--                                    <div id="validation-owner-id" class="invalid-feedback" v-show="errors.owner_id">--}}
+{{--                                        <span v-text="errors.owner_id"></span>--}}
+{{--                                    </div>--}}
+{{--                                    <div class="form-inline col-3">--}}
+{{--                                        <input type="text" name="owner_search" id="owner_search" v-model="owner_search" class="form-control form-control-sm">--}}
+{{--                                    </div>--}}
+{{--                                </div>--}}
 
-                        <div class="form-group row">
-                            <div class="form-inline col-4 row">
-                                <label class="col-4 col-form-label text-right  d-inline-block  text-primary"
-                                       for="driver_name">
-                                    <span class="text-danger">*</span>
-                                    司机姓名</label>
-                                <div class="form-inline col-8">
-                                    <input type="text" class="form-control form-control-sm col-12" placeholder=""
-                                           name="driver_name" id="driver_name"
-                                           :class="{'is-invalid':errors.driver_name}"
-                                           @change="clearError('driver_name')"
-                                           v-model="receiving_task.driver_name">
-                                    <div id="validation-driver-name" class="invalid-feedback"
-                                         v-show="errors.driver_name">
-                                        <span v-text="errors.driver_name"></span>
-                                    </div>
-                                </div>
-                            </div>
-                            <div class="form-inline col-4 row">
-                                <label class="col-4 col-form-label text-right  d-inline-block  text-primary"
-                                       for="driver-phone">
-                                    <span class="text-danger">*</span>
-                                    司机电话</label>
-                                <div class="form-inline col-8">
-                                    <input type="text" class="form-control form-control-sm col-12" placeholder=""
-                                           name="driver_phone" id="driver-phone"
-                                           :class="{'is-invalid':errors.driver_phone}"
-                                           @change="clearError('driver_phone')"
-                                           v-model="receiving_task.driver_phone">
-                                    <div id="validation-driver-phone" class="invalid-feedback"
-                                         v-show="errors.driver_name">
-                                        <span v-text="errors.driver_phone"></span>
-                                    </div>
-                                </div>
-                            </div>
-                            <div class="form-inline col-4 row">
-                                <label class="col-4 col-form-label text-right  d-inline-block  text-primary"
-                                       for="appointment_number">
-                                    <span class="text-danger">*</span>
-                                    预约单号</label>
-                                <div class="form-inline col-8">
-                                    <input type="text" class="form-control form-control-sm col-12" placeholder=""
-                                           name="appointment_number" id="appointment_number"
-                                           :class="{'is-invalid':errors.appointment_number}"
+{{--                            </div>--}}
+{{--                        </div>--}}
+
+{{--                        <div class="form-group row">--}}
+{{--                            <div class="form-inline col-4 row">--}}
+{{--                                <label class="col-4 col-form-label text-right  d-inline-block  text-primary"--}}
+{{--                                       for="driver_name">--}}
+{{--                                    <span class="text-danger">*</span>--}}
+{{--                                    司机姓名</label>--}}
+{{--                                <div class="form-inline col-8">--}}
+{{--                                    <input type="text" class="form-control form-control-sm col-12" placeholder=""--}}
+{{--                                           name="driver_name" id="driver_name"--}}
+{{--                                           :class="{'is-invalid':errors.driver_name}"--}}
+{{--                                           @change="clearError('driver_name')"--}}
+{{--                                           v-model="receiving_task.driver_name">--}}
+{{--                                    <div id="validation-driver-name" class="invalid-feedback"--}}
+{{--                                         v-show="errors.driver_name">--}}
+{{--                                        <span v-text="errors.driver_name"></span>--}}
+{{--                                    </div>--}}
+{{--                                </div>--}}
+{{--                            </div>--}}
+{{--                            <div class="form-inline col-4 row">--}}
+{{--                                <label class="col-4 col-form-label text-right  d-inline-block  text-primary"--}}
+{{--                                       for="driver-phone">--}}
+{{--                                    <span class="text-danger">*</span>--}}
+{{--                                    司机电话</label>--}}
+{{--                                <div class="form-inline col-8">--}}
+{{--                                    <input type="text" class="form-control form-control-sm col-12" placeholder=""--}}
+{{--                                           name="driver_phone" id="driver-phone"--}}
+{{--                                           :class="{'is-invalid':errors.driver_phone}"--}}
+{{--                                           @change="clearError('driver_phone')"--}}
+{{--                                           v-model="receiving_task.driver_phone">--}}
+{{--                                    <div id="validation-driver-phone" class="invalid-feedback"--}}
+{{--                                         v-show="errors.driver_name">--}}
+{{--                                        <span v-text="errors.driver_phone"></span>--}}
+{{--                                    </div>--}}
+{{--                                </div>--}}
+{{--                            </div>--}}
+{{--                            <div class="form-inline col-4 row">--}}
+{{--                                <label class="col-4 col-form-label text-right  d-inline-block  text-primary"--}}
+{{--                                       for="appointment_number">--}}
+{{--                                    <span class="text-danger">*</span>--}}
+{{--                                    预约单号</label>--}}
+{{--                                <div class="form-inline col-8">--}}
+{{--                                    <input type="text" class="form-control form-control-sm col-12" placeholder=""--}}
+{{--                                           name="appointment_number" id="appointment_number"--}}
+{{--                                           :class="{'is-invalid':errors.appointment_number}"--}}
 {{--                                           @keydown.enter="getAnsNo"--}}
-                                           @change="clearError('appointment_number')"
-                                           v-model="receiving_task.appointment_number">
-                                    <div id="validation-delivery-appointment-number" class="invalid-feedback"
-                                         v-show="errors.appointment_number">
-                                        <span v-text="errors.appointment_number"></span>
-                                    </div>
-                                </div>
-                            </div>
-                        </div>
+{{--                                           @change="clearError('appointment_number')"--}}
+{{--                                           v-model="receiving_task.appointment_number">--}}
+{{--                                    <div id="validation-delivery-appointment-number" class="invalid-feedback"--}}
+{{--                                         v-show="errors.appointment_number">--}}
+{{--                                        <span v-text="errors.appointment_number"></span>--}}
+{{--                                    </div>--}}
+{{--                                </div>--}}
+{{--                            </div>--}}
+{{--                        </div>--}}
 
-                        <div class="form-group row">
-                            <div class="form-inline col-4 row">
-                                <label class="col-4 col-form-label text-right d-inline-block" for="plate_number">
-                                    <span class="text-danger">*</span>
-                                    车牌号</label>
-                                <div class="form-inline col-8">
-                                    <input type="text" class="form-control form-control-sm col-12" placeholder=""
-                                           name="plate_number" id="plate_number"
-                                           :class="{'is-invalid':errors.plate_number}"
-                                           @change="clearError('plate_number')"
-                                           :disabled="receiving_task.logistics_single_number"
-                                           v-model="receiving_task.plate_number">
-                                    <div id="validation-plate-number" class="invalid-feedback"
-                                         v-show="errors.plate_number">
-                                        <span v-text="errors.plate_number"></span>
-                                    </div>
-                                </div>
-                            </div>
-                            <div class="form-inline col-4 row">
-                                <label class="col-4 col-form-label text-right d-inline-block" for="driving_license_no">
-                                    <span class="text-danger">*</span>
-                                    驾驶证号</label>
-                                <div class="form-inline col-8">
-                                    <input type="text" class="form-control form-control-sm col-12" placeholder=""
-                                           name="driving_license_no" id="driving_license_no"
-                                           :class="{'is-invalid':errors.driving_license_no}"
-                                           @change="clearError('driving_license_no')"
-                                           :disabled="receiving_task.logistics_single_number"
-                                           v-model="receiving_task.driving_license_no">
-                                    <div id="validation-driving-license-no" class="invalid-feedback"
-                                         v-show="errors.driving_license_no">
-                                        <span v-text="errors.driving_license_no"></span>
-                                    </div>
-                                </div>
-                            </div>
-                            <div class="form-inline col-4 row">
-                                <label class="col-4 col-form-label text-right d-inline-block"
-                                       for="logistics_single_number">
-                                    <span class="text-danger">*</span>
-                                    物流单号</label>
-                                <div class="form-inline col-8">
-                                    <input type="text" class="form-control form-control-sm col-12" placeholder=""
-                                           name="logistics_single_number" id="logistics_single_number"
-                                           :class="{'is-invalid':errors.logistics_single_number}"
-                                           @change="clearError('logistics_single_number')"
-                                           :disabled="checkLogisticsSingleIsWrite()"
-                                           v-model="receiving_task.logistics_single_number">
-                                    <div id="validation-driving-license-no" class="invalid-feedback"
-                                         v-show="errors.logistics_single_number">
-                                        <span v-text="errors.logistics_single_number"></span>
-                                    </div>
-                                </div>
-                            </div>
-                        </div>
+{{--                        <div class="form-group row">--}}
+{{--                            <div class="form-inline col-4 row">--}}
+{{--                                <label class="col-4 col-form-label text-right d-inline-block" for="plate_number">--}}
+{{--                                    <span class="text-danger">*</span>--}}
+{{--                                    车牌号</label>--}}
+{{--                                <div class="form-inline col-8">--}}
+{{--                                    <input type="text" class="form-control form-control-sm col-12" placeholder=""--}}
+{{--                                           name="plate_number" id="plate_number"--}}
+{{--                                           :class="{'is-invalid':errors.plate_number}"--}}
+{{--                                           @change="clearError('plate_number')"--}}
+{{--                                           :disabled="receiving_task.logistics_single_number"--}}
+{{--                                           v-model="receiving_task.plate_number">--}}
+{{--                                    <div id="validation-plate-number" class="invalid-feedback"--}}
+{{--                                         v-show="errors.plate_number">--}}
+{{--                                        <span v-text="errors.plate_number"></span>--}}
+{{--                                    </div>--}}
+{{--                                </div>--}}
+{{--                            </div>--}}
+{{--                            <div class="form-inline col-4 row">--}}
+{{--                                <label class="col-4 col-form-label text-right d-inline-block" for="driving_license_no">--}}
+{{--                                    <span class="text-danger">*</span>--}}
+{{--                                    驾驶证号</label>--}}
+{{--                                <div class="form-inline col-8">--}}
+{{--                                    <input type="text" class="form-control form-control-sm col-12" placeholder=""--}}
+{{--                                           name="driving_license_no" id="driving_license_no"--}}
+{{--                                           :class="{'is-invalid':errors.driving_license_no}"--}}
+{{--                                           @change="clearError('driving_license_no')"--}}
+{{--                                           :disabled="receiving_task.logistics_single_number"--}}
+{{--                                           v-model="receiving_task.driving_license_no">--}}
+{{--                                    <div id="validation-driving-license-no" class="invalid-feedback"--}}
+{{--                                         v-show="errors.driving_license_no">--}}
+{{--                                        <span v-text="errors.driving_license_no"></span>--}}
+{{--                                    </div>--}}
+{{--                                </div>--}}
+{{--                            </div>--}}
+{{--                            <div class="form-inline col-4 row">--}}
+{{--                                <label class="col-4 col-form-label text-right d-inline-block"--}}
+{{--                                       for="logistics_single_number">--}}
+{{--                                    <span class="text-danger">*</span>--}}
+{{--                                    物流单号</label>--}}
+{{--                                <div class="form-inline col-8">--}}
+{{--                                    <input type="text" class="form-control form-control-sm col-12" placeholder=""--}}
+{{--                                           name="logistics_single_number" id="logistics_single_number"--}}
+{{--                                           :class="{'is-invalid':errors.logistics_single_number}"--}}
+{{--                                           @change="clearError('logistics_single_number')"--}}
+{{--                                           :disabled="checkLogisticsSingleIsWrite()"--}}
+{{--                                           v-model="receiving_task.logistics_single_number">--}}
+{{--                                    <div id="validation-driving-license-no" class="invalid-feedback"--}}
+{{--                                         v-show="errors.logistics_single_number">--}}
+{{--                                        <span v-text="errors.logistics_single_number"></span>--}}
+{{--                                    </div>--}}
+{{--                                </div>--}}
+{{--                            </div>--}}
+{{--                        </div>--}}
 
-                        <div class="form-group row">
-                            <div class="form-inline col-4 row">
-                                <label class="col-4 col-form-label text-right d-inline-block text-primary"
-                                       for="plate_number">
-                                    <span class="text-danger">*</span>
-                                    是否提供清单</label>
-                                <div class="form-inline col-8">
-                                    <select name="provide_list" id="provide_list"
-                                            class="form-control form-control-sm col-12"
-                                            :class="{'is-invalid':errors.provide_list}"
-                                            @change="clearError('provide_list')"
-                                            v-model="receiving_task.provide_list">
-                                        <option v-for="item in provide_lists" :value="item" v-text="item"></option>
-                                    </select>
-                                    <div id="validation-provide_list" class="invalid-feedback"
-                                         v-show="errors.provide_list">
-                                        <span v-text="errors.provide_list"></span>
-                                    </div>
-                                </div>
-                            </div>
-                            <div class="form-inline col-4 row">
-                                <label class="col-4 col-form-label text-right  d-inline-block  text-primary"
-                                       for="receiving_type">
-                                    <span class="text-danger">*</span>
-                                    收货类型</label>
-                                <div class="form-inline col-8">
-                                    <select name="receiving_type" id="receiving_type"
-                                            class="form-control form-control-sm col-12"
-                                            :class="{'is-invalid':errors.receiving_type}"
-                                            @change="clearError('provide_list')"
-                                            v-model="receiving_task.receiving_type">
-                                        <option v-for="item in receiving_types" :value="item" v-text="item"></option>
-                                    </select>
-                                    <div id="validation-receiving-type" class="invalid-feedback"
-                                         v-show="errors.receiving_type">
-                                        <span v-text="errors.receiving_type"></span>
-                                    </div>
-                                </div>
-                            </div>
-                        </div>
+{{--                        <div class="form-group row">--}}
+{{--                            <div class="form-inline col-4 row">--}}
+{{--                                <label class="col-4 col-form-label text-right d-inline-block text-primary"--}}
+{{--                                       for="plate_number">--}}
+{{--                                    <span class="text-danger">*</span>--}}
+{{--                                    是否提供清单</label>--}}
+{{--                                <div class="form-inline col-8">--}}
+{{--                                    <select name="provide_list" id="provide_list"--}}
+{{--                                            class="form-control form-control-sm col-12"--}}
+{{--                                            :class="{'is-invalid':errors.provide_list}"--}}
+{{--                                            @change="clearError('provide_list')"--}}
+{{--                                            v-model="receiving_task.provide_list">--}}
+{{--                                        <option v-for="item in provide_lists" :value="item" v-text="item"></option>--}}
+{{--                                    </select>--}}
+{{--                                    <div id="validation-provide_list" class="invalid-feedback"--}}
+{{--                                         v-show="errors.provide_list">--}}
+{{--                                        <span v-text="errors.provide_list"></span>--}}
+{{--                                    </div>--}}
+{{--                                </div>--}}
+{{--                            </div>--}}
+{{--                            <div class="form-inline col-4 row">--}}
+{{--                                <label class="col-4 col-form-label text-right  d-inline-block  text-primary"--}}
+{{--                                       for="receiving_type">--}}
+{{--                                    <span class="text-danger">*</span>--}}
+{{--                                    收货类型</label>--}}
+{{--                                <div class="form-inline col-8">--}}
+{{--                                    <select name="receiving_type" id="receiving_type"--}}
+{{--                                            class="form-control form-control-sm col-12"--}}
+{{--                                            :class="{'is-invalid':errors.receiving_type}"--}}
+{{--                                            @change="clearError('provide_list')"--}}
+{{--                                            v-model="receiving_task.receiving_type">--}}
+{{--                                        <option v-for="item in receiving_types" :value="item" v-text="item"></option>--}}
+{{--                                    </select>--}}
+{{--                                    <div id="validation-receiving-type" class="invalid-feedback"--}}
+{{--                                         v-show="errors.receiving_type">--}}
+{{--                                        <span v-text="errors.receiving_type"></span>--}}
+{{--                                    </div>--}}
+{{--                                </div>--}}
+{{--                            </div>--}}
+{{--                        </div>--}}
 
-                        <div class="form-group row">
-                            <div class="form-inline col-4 row">
-                                <label class="col-4 col-form-label text-right d-inline-block text-primary"
-                                       for="driving_license_image">
-                                    <span class="text-danger">*</span>
-                                    驾驶证扫描件</label>
-                                <div class="form-inline col-8">
-                                    <input type="file" class="form-control form-control-file col-12" placeholder=""
-                                           name="driving_license_image" id="driving_license_image">
-                                </div>
-                            </div>
-                        </div>
-                    </form>
-                </div>
+{{--                        <div class="form-group row">--}}
+{{--                            <div class="form-inline col-4 row">--}}
+{{--                                <label class="col-4 col-form-label text-right d-inline-block text-primary"--}}
+{{--                                       for="driving_license_image">--}}
+{{--                                    <span class="text-danger">*</span>--}}
+{{--                                    驾驶证扫描件</label>--}}
+{{--                                <div class="form-inline col-8">--}}
+{{--                                    <input type="file" class="form-control form-control-file col-12" placeholder=""--}}
+{{--                                           name="driving_license_image" id="driving_license_image">--}}
+{{--                                </div>--}}
+{{--                            </div>--}}
+{{--                        </div>--}}
+{{--                    </form>--}}
+{{--                </div>--}}
 
-                <div class="card-body mb-0 pt-0 pm-0">
-                    <el-table
-                        :key="asn_headers_table_key"
-                        size="small"
-                        highlight-current-row
-                        ref="asn_headers_table"
-                        :data="asn_headers"
-                        height="350"
-                        border
-                        @row-click="showAsnDetails"
-                        row-key="asn_no"
-                        @selection-change="handleSelectionChange"
-                        style="width: 100%">
+{{--                <div class="card-body mb-0 pt-0 pm-0">--}}
+{{--                    <el-table--}}
+{{--                        :key="asn_headers_table_key"--}}
+{{--                        size="small"--}}
+{{--                        highlight-current-row--}}
+{{--                        ref="asn_headers_table"--}}
+{{--                        :data="asn_headers"--}}
+{{--                        height="350"--}}
+{{--                        border--}}
+{{--                        @row-click="showAsnDetails"--}}
+{{--                        row-key="asn_no"--}}
+{{--                        @selection-change="handleSelectionChange"--}}
+{{--                        style="width: 100%">--}}
 
-                        <el-table-column
-                            type="selection"
-                            width="55">
-                        </el-table-column>
+{{--                        <el-table-column--}}
+{{--                            type="selection"--}}
+{{--                            width="55">--}}
+{{--                        </el-table-column>--}}
 
-                        <el-table-column
-                            prop="customer_id" label="货主">
-                        </el-table-column>
+{{--                        <el-table-column--}}
+{{--                            prop="customer_id" label="货主">--}}
+{{--                        </el-table-column>--}}
 
-                        <el-table-column
-                            sortable
-                            prop="asn_no" label="ASN号">
-                        </el-table-column>
+{{--                        <el-table-column--}}
+{{--                            sortable--}}
+{{--                            prop="asn_no" label="ASN号">--}}
+{{--                        </el-table-column>--}}
 
-                        <el-table-column
-                            prop="asn_type" label="ASN类型">
-                        </el-table-column>
+{{--                        <el-table-column--}}
+{{--                            prop="asn_type" label="ASN类型">--}}
+{{--                        </el-table-column>--}}
 
-                        <el-table-column
-                            sortable
-                            prop="asn_status" label="订单状态">
-                        </el-table-column>
+{{--                        <el-table-column--}}
+{{--                            sortable--}}
+{{--                            prop="asn_status" label="订单状态">--}}
+{{--                        </el-table-column>--}}
 
-                        <el-table-column
-                            prop="up_stream_number"
-                            label="上游单号">
-                        </el-table-column>
-                        <el-table-column
-                            prop="anticipated_sum_number"
-                            label="预期总数">
-                        </el-table-column>
-                        <el-table-column
-                            prop="number1"
-                            label="参考编号1"
-                        >
-                        </el-table-column>
-                        <el-table-column
-                            prop="number2"
-                            label="参考编号2">
-                        </el-table-column>
-                        <el-table-column
-                            prop="number3"
-                            label="参考编号3">
-                        </el-table-column>
-                        <el-table-column
-                            sortable
-                            prop="receiving_time"
-                            label="接收时间">
-                        </el-table-column>
-                    </el-table>
+{{--                        <el-table-column--}}
+{{--                            prop="up_stream_number"--}}
+{{--                            label="上游单号">--}}
+{{--                        </el-table-column>--}}
+{{--                        <el-table-column--}}
+{{--                            prop="anticipated_sum_number"--}}
+{{--                            label="预期总数">--}}
+{{--                        </el-table-column>--}}
+{{--                        <el-table-column--}}
+{{--                            prop="number1"--}}
+{{--                            label="参考编号1"--}}
+{{--                        >--}}
+{{--                        </el-table-column>--}}
+{{--                        <el-table-column--}}
+{{--                            prop="number2"--}}
+{{--                            label="参考编号2">--}}
+{{--                        </el-table-column>--}}
+{{--                        <el-table-column--}}
+{{--                            prop="number3"--}}
+{{--                            label="参考编号3">--}}
+{{--                        </el-table-column>--}}
+{{--                        <el-table-column--}}
+{{--                            sortable--}}
+{{--                            prop="receiving_time"--}}
+{{--                            label="接收时间">--}}
+{{--                        </el-table-column>--}}
+{{--                    </el-table>--}}
 
-                    <div class="block">
-                        <el-pagination
-                            @size-change="handleSizeChange"
-                            @current-change="handleCurrentChange"
-                            :current-page="current_page"
-                            :page-sizes="['50',100, 200, 300, 400]"
-                            :page-size="50"
-                            layout="total, sizes, prev, pager, next, jumper"
-                            :total="total">
-                        </el-pagination>
-                    </div>
-                </div>
-                <div class="card-body mt-0 pt-0 pm-0">
-                    <el-table
-                        ref="asn_details_table"
-                        size="small"
-                        border
-                        :data="asn_details"
-                        style="width: 100%"
-                        height="300">
+{{--                    <div class="block">--}}
+{{--                        <el-pagination--}}
+{{--                            @size-change="handleSizeChange"--}}
+{{--                            @current-change="handleCurrentChange"--}}
+{{--                            :current-page="current_page"--}}
+{{--                            :page-sizes="['50',100, 200, 300, 400]"--}}
+{{--                            :page-size="50"--}}
+{{--                            layout="total, sizes, prev, pager, next, jumper"--}}
+{{--                            :total="total">--}}
+{{--                        </el-pagination>--}}
+{{--                    </div>--}}
+{{--                </div>--}}
+{{--                <div class="card-body mt-0 pt-0 pm-0">--}}
+{{--                    <el-table--}}
+{{--                        ref="asn_details_table"--}}
+{{--                        size="small"--}}
+{{--                        border--}}
+{{--                        :data="asn_details"--}}
+{{--                        style="width: 100%"--}}
+{{--                        height="300">--}}
 
-                        <el-table-column
-                            prop="line_status"
-                            label="行状态"
-                            width="180">
-                        </el-table-column>
-                        <el-table-column
-                            prop="name"
-                            label="产品名称">
-                        </el-table-column>
-                        <el-table-column
-                            prop="code1"
-                            label="条码1"
-                            width="180">
-                        </el-table-column>
-                        <el-table-column
-                            prop="code2"
-                            label="条码2"
-                            width="180">
-                        </el-table-column>
-                        <el-table-column
-                            prop="code3"
-                            label="条码3">
-                        </el-table-column>
-                        <el-table-column
-                            prop="anticipated_number"
-                            label="预期数量"
-                            width="180">
-                        </el-table-column>
-                        <el-table-column
-                            prop="number"
-                            label="已收取"
-                            width="180">
-                        </el-table-column>
-                    </el-table>
-                </div>
-                <div class="form-group">
-                    <el-button type="primary" class="col-12" @click="submit" v-if="!submit_loading">提 交</el-button>
-                    <el-button type="primary" class="col-12" :loading="true" v-if="submit_loading">提 交 中</el-button>
-                </div>
-                <div class="form-group">
-                    @can('入库管理-开单入库-打印任务单')
-                        <el-button type="primary" class="col-12" @click="printLodop"
-                                   v-show="receiving_task_print.number">
-                            <span v-text="receiving_task_print.number + '打  印'"></span>
-                        </el-button>
-                    @endcan
-                </div>
-                @include("store.receivingTasks._receiving_task_print")
-                @include("store.receivingTasks._clodop_print")
-            </div>
-        </div>
+{{--                        <el-table-column--}}
+{{--                            prop="line_status"--}}
+{{--                            label="行状态"--}}
+{{--                            width="180">--}}
+{{--                        </el-table-column>--}}
+{{--                        <el-table-column--}}
+{{--                            prop="name"--}}
+{{--                            label="产品名称">--}}
+{{--                        </el-table-column>--}}
+{{--                        <el-table-column--}}
+{{--                            prop="code1"--}}
+{{--                            label="条码1"--}}
+{{--                            width="180">--}}
+{{--                        </el-table-column>--}}
+{{--                        <el-table-column--}}
+{{--                            prop="code2"--}}
+{{--                            label="条码2"--}}
+{{--                            width="180">--}}
+{{--                        </el-table-column>--}}
+{{--                        <el-table-column--}}
+{{--                            prop="code3"--}}
+{{--                            label="条码3">--}}
+{{--                        </el-table-column>--}}
+{{--                        <el-table-column--}}
+{{--                            prop="anticipated_number"--}}
+{{--                            label="预期数量"--}}
+{{--                            width="180">--}}
+{{--                        </el-table-column>--}}
+{{--                        <el-table-column--}}
+{{--                            prop="number"--}}
+{{--                            label="已收取"--}}
+{{--                            width="180">--}}
+{{--                        </el-table-column>--}}
+{{--                    </el-table>--}}
+{{--                </div>--}}
+{{--                <div class="form-group">--}}
+{{--                    <el-button type="primary" class="col-12" @click="submit" v-if="!submit_loading">提 交</el-button>--}}
+{{--                    <el-button type="primary" class="col-12" :loading="true" v-if="submit_loading">提 交 中</el-button>--}}
+{{--                </div>--}}
+{{--                <div class="form-group">--}}
+{{--                    @can('入库管理-开单入库-打印任务单')--}}
+{{--                        <el-button type="primary" class="col-12" @click="printLodop"--}}
+{{--                                   v-show="receiving_task_print.number">--}}
+{{--                            <span v-text="receiving_task_print.number + '打  印'"></span>--}}
+{{--                        </el-button>--}}
+{{--                    @endcan--}}
+{{--                </div>--}}
+{{--                @include("store.receivingTasks._receiving_task_print")--}}
+{{--                @include("store.receivingTasks._clodop_print")--}}
+{{--            </div>--}}
+{{--        </div>--}}
 
     </div>
 @endsection

+ 4 - 1
routes/api/thirdPart/hengli.php

@@ -1,11 +1,14 @@
 <?php
 
 use App\Http\Controllers\api\thirdPart\hengli\PackageController;
+use App\Http\Controllers\api\thirdPart\hengli\OrderIssueController;
 use Illuminate\Support\Facades\Route;
 
 /*
 地址前缀:api/thirdPart/hengli
 */
 Route::group(['prefix'=>'weight'],function(){
-    Route::GET('new', "PackageController@new_");        //称重上传
+    Route::ANY('new', "PackageController@new_");        //称重上传
+    Route::ANY('checkIntercept','OrderIssueController@checkInterceptPackage');
+    Route::ANY('intercept','OrderIssueController@interceptExpressCodes');
 });