paginate(50); return view('store.index',['stores'=>$stores]); } /** * Show the form for creating a new resource. * * @return \Illuminate\Http\Response */ public function create() { return view('store.fast.create'); } /** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(Request $request) { $this->validator($request); $WMSReflectReceive=WMSReflectReceive::with('skus')->where('ASNNO',$request->input('asn_code'))->first(); if (!$WMSReflectReceive)return redirect('store/fast/create')->with('successError','ASN编号不存在!'); $warehouse=Warehouse::where('code',$WMSReflectReceive->WAREHOUSEID)->first(); if (!$warehouse&&$WMSReflectReceive->WAREHOUSEID){ $warehouse=new Warehouse([ 'name'=>$WMSReflectReceive->WAREHOUSEID, 'code'=>$WMSReflectReceive->WAREHOUSEID ]); $warehouse->save(); } $owner=Owner::where('code',$WMSReflectReceive->CUSTOMERID)->first(); if (!$owner&&$WMSReflectReceive->CUSTOMERID){ $owner=new Warehouse([ 'name'=>$WMSReflectReceive->CUSTOMERID, 'code'=>$WMSReflectReceive->CUSTOMERID ]); $owner->save(); } $store=new Store([ 'asn_code'=>$WMSReflectReceive->ASNNO, 'warehouse_id'=>$warehouse->id, 'owner_id'=>$owner->id, 'stored_method'=>'快速入库', 'status'=>'未入库', 'remark'=>$WMSReflectReceive->NOTES, ]); $store->save(); if ($WMSReflectReceive->skus){ foreach ($WMSReflectReceive->skus as $sku){ $depository=Depository::where('code',$sku->LOTATT05)->first(); if (!$depository){ $depository=new Depository([ 'name'=>$sku->LOTATT05, 'code'=>$sku->LOTATT05 ]); $depository->save(); } $storeItem=new StoreItems([ 'store_id'=>$store->id, 'asn_line_code'=>$sku->ASNLINENO, 'name'=>$sku->SKUDESCRC, 'sku'=>$sku->SKU, 'barcode'=>$sku->ALTERNATE_SKU1, 'depository_id'=>$depository->id, 'quality'=>$request->input('quality'), 'status'=>'未入库', ]); $storeItem->save(); } } $store=Store::with('storeItems')->where('asn_code',$request->input('asn_code'))->first(); $storeApi=new \App\Http\Controllers\Api\thirdPart\flux\StoreController(); $result=$storeApi->accomplishToWMS($store); if ($result){ $store->status='已入库'; $store->save(); if ($store->storeItems){ $quality=$request->input('quality'); $store->storeItems->each(function ($storeItem)use($quality){ $storeItem->status='已入库'; $storeItem->quality=$quality; $storeItem->save(); }); } } //TODO 回传WMS未作测试 } /** * Display the specified resource. * * @param \App\Store $store * @return \Illuminate\Http\Response */ public function show(Store $store) { // } /** * Show the form for editing the specified resource. * * @param \App\Store $store * @return \Illuminate\Http\Response */ public function edit(Store $store) { // } /** * Update the specified resource in storage. * * @param \Illuminate\Http\Request $request * @param \App\Store $store * @return \Illuminate\Http\Response */ public function update(Request $request, Store $store) { // } /** * Remove the specified resource from storage. * * @param \App\Store $store * @return \Illuminate\Http\Response */ public function destroy(Store $store) { // } public function validator(Request $request){ $validator=Validator::make($request->input(),[ 'asn_code'=>['required','unique:stores,asn_code'], 'quality'=>['required'] ],[ 'required'=>':attribute 为必填项', 'unique'=>':attribute 已存在', ],[ 'asn_code'=>'ASN编号', 'quality'=>'货物类型' ])->validate(); return $validator; } }