Code Coverage |
||||||||||
Classes and Traits |
Functions and Methods |
Lines |
||||||||
| Total | |
0.00% |
0 / 1 |
|
0.00% |
0 / 12 |
CRAP | |
0.00% |
0 / 80 |
| RejectedBillController | |
0.00% |
0 / 1 |
|
0.00% |
0 / 12 |
1332.00 | |
0.00% |
0 / 80 |
| index | |
0.00% |
0 / 1 |
2.00 | |
0.00% |
0 / 1 |
|||
| create | |
0.00% |
0 / 1 |
2.00 | |
0.00% |
0 / 1 |
|||
| store | |
0.00% |
0 / 1 |
2.00 | |
0.00% |
0 / 1 |
|||
| apiGetRecent | |
0.00% |
0 / 1 |
12.00 | |
0.00% |
0 / 6 |
|||
| apiStore | |
0.00% |
0 / 1 |
42.00 | |
0.00% |
0 / 14 |
|||
| apiUpdate | |
0.00% |
0 / 1 |
30.00 | |
0.00% |
0 / 13 |
|||
| validator | |
0.00% |
0 / 1 |
42.00 | |
0.00% |
0 / 16 |
|||
| apiSetIsLoadedAll | |
0.00% |
0 / 1 |
42.00 | |
0.00% |
0 / 13 |
|||
| show | |
0.00% |
0 / 1 |
2.00 | |
0.00% |
0 / 1 |
|||
| edit | |
0.00% |
0 / 1 |
12.00 | |
0.00% |
0 / 9 |
|||
| update | |
0.00% |
0 / 1 |
2.00 | |
0.00% |
0 / 1 |
|||
| destroy | |
0.00% |
0 / 1 |
6.00 | |
0.00% |
0 / 4 |
|||
| <?php | |
| namespace App\Http\Controllers; | |
| use App\Logistic; | |
| use App\Owner; | |
| use App\QualityLabel; | |
| use App\Rejected; | |
| use App\RejectedBill; | |
| use Illuminate\Contracts\View\Factory; | |
| use Illuminate\Http\RedirectResponse; | |
| use Illuminate\Http\Request; | |
| use Illuminate\Http\Response; | |
| use Illuminate\Routing\Redirector; | |
| use Illuminate\Support\Facades\Auth; | |
| use Illuminate\Support\Facades\Gate; | |
| use Illuminate\Support\Facades\Session; | |
| use Illuminate\Support\Facades\Validator; | |
| use Illuminate\View\View; | |
| use Ramsey\Uuid\Uuid; | |
| class RejectedBillController extends Controller | |
| { | |
| /** | |
| * Display a listing of the resource. | |
| * | |
| * @return Response | |
| */ | |
| public function index() | |
| { | |
| // | |
| } | |
| /** | |
| * Show the form for creating a new resource. | |
| * | |
| * @return Response | |
| */ | |
| public function create() | |
| { | |
| // | |
| } | |
| /** | |
| * Store a newly created resource in storage. | |
| * | |
| * @param Request $request | |
| * @return Response | |
| */ | |
| public function store(Request $request) | |
| { | |
| // | |
| } | |
| public function apiGetRecent() | |
| { | |
| if(!Gate::allows('退货管理-查询')){ | |
| return ['success'=>'false','fail_info'=>'没有权限'];} | |
| $user=Auth::user(); | |
| $rejectedBills = RejectedBill::query()->orderByDesc('id')->whereIn('id_owner', | |
| $user?$user->getPermittingOwnerIdsAttribute():[])->limit(20)->get(); | |
| return ['success'=>'true','rejectedBills'=>$rejectedBills->toArray()]; | |
| } | |
| public function apiStore(Request $request) | |
| { | |
| if(!Gate::allows('退货管理-录入')){ | |
| return ['success'=>'false','fail_info'=>'没有权限']; | |
| } | |
| $softDeleted=RejectedBill::withTrashed()->where('logistic_number_return',$request->input('logistic_number_return'))->first(); | |
| if($softDeleted&&$softDeleted->trashed()){ | |
| $softDeleted->forceDelete(); | |
| } | |
| if($request['is_loaded']=='null')$request['is_loaded']=null; | |
| $errorFields= $this->validator($request->all())->errors()->getMessages(); | |
| if(!empty($errorFields)){ | |
| return ['success'=>'false','error_fields'=>$errorFields,'fail_info'=>'fileds error']; | |
| } | |
| $rejectedBill=new RejectedBill($request->all()); | |
| $rejectedBill['id_operator'] = Auth::user()['id']; | |
| $rejectedBill->save(); | |
| $this->log(__METHOD__,__FUNCTION__,json_encode($request->toArray()),Auth::user()['id']); | |
| return ['success'=>'true','id'=>$rejectedBill['id']]; | |
| } | |
| public function apiUpdate(Request $request) | |
| { | |
| if(!Gate::allows('退货管理-编辑')){ | |
| return ['success'=>'false','fail_info'=>'没有权限']; | |
| } | |
| if($request['is_loaded']=='null')$request['is_loaded']=null; | |
| $errorFields= $this->validator($request->all(),true)->errors()->getMessages(); | |
| if(!empty($errorFields)){ | |
| return ['success'=>'false','error_fields'=>$errorFields,'fail_info'=>'fileds error']; | |
| } | |
| $rejectedBill=RejectedBill::find($request->input('id')); | |
| $rejectedBill->fill($request->all()); | |
| $rejectedBill->save(); | |
| if($request->input('is_at_edit_page')==true){ | |
| Session::put('rejected.index.isFromEditPage',true); | |
| } | |
| $this->log(__METHOD__,__FUNCTION__,json_encode($request->toArray()),Auth::user()['id']); | |
| return ['success'=>'true']; | |
| } | |
| protected function validator(array $data,$isUpdate=false) | |
| { | |
| $logistic_number_return_unique='unique:rejected_bills,logistic_number_return'; | |
| if($isUpdate) | |
| $logistic_number_return_unique=''; | |
| $mobileShouldBeRequired = 'required'; | |
| $logistic=Logistic::find($data['id_logistic_return']); | |
| if($logistic){if(strstr($logistic['name'],'顺丰')){ | |
| $mobileShouldBeRequired = 'nullable'; | |
| }} | |
| $mobileDigits = ''; | |
| if($data['mobile_sender']&&$data['mobile_sender'][0]=='1'){ | |
| $mobileDigits = 'digits:11'; | |
| } | |
| return Validator::make($data, [ | |
| 'id_owner' => ['required', 'numeric', 'exists:owners,id'], | |
| 'order_number' => ['nullable', 'string','max:60'], | |
| 'sender' => ['nullable', 'max:50'], | |
| 'mobile_sender' => [$mobileShouldBeRequired, 'max:20',$mobileDigits], | |
| 'logistic_number' => ['nullable', 'max:60'], | |
| 'logistic_number_return' => ['required','string', 'max:60', $logistic_number_return_unique], | |
| 'id_logistic_return' => ['required', 'numeric', 'exists:logistics,id'], | |
| 'fee_collected' => ['nullable','between:0,99999','numeric'], | |
| 'is_loaded' => ['nullable','boolean'], | |
| ],[ | |
| 'mobile_sender.digits'=>'如果是手机则必须为11位', | |
| ],[ | |
| 'id_owner'=>'客户名称', | |
| 'order_number'=>'订单号', | |
| 'sender'=>'寄件人', | |
| 'mobile_sender'=>'寄件人手机', | |
| 'logistic_number'=>'原单号', | |
| 'logistic_number_return'=>'退回单号', | |
| 'id_logistic_return'=>'物流公司', | |
| 'fee_collected'=>'到付费用', | |
| 'is_loaded'=>'是否入库', | |
| ]); | |
| } | |
| public function apiSetIsLoadedAll(Request $request) | |
| { | |
| if(!Gate::allows('退货管理-编辑')){ return redirect(url('/')); } | |
| $ids=$request->input('ids')??''; | |
| $rejecteds=RejectedBill::whereIn('id',$ids)->get(); | |
| $is_loaded = $request->input('is_loaded'); | |
| switch ($is_loaded){ | |
| case '0':$is_loaded=false;break; | |
| case '1':$is_loaded=true;break; | |
| case 'null':$is_loaded=null;break; | |
| } | |
| $rejecteds->each(function($rejected)use($is_loaded){ | |
| $rejected['is_loaded']=$is_loaded; | |
| $re=$rejected->update(); | |
| if (!$re){ | |
| return ['success'=>'false','fail_info'=>"数据 {$rejected['id']} 更新失败"]; | |
| } | |
| }); | |
| return ['success'=>'true']; | |
| } | |
| /** | |
| * Display the specified resource. | |
| * | |
| * @param RejectedBill $rejectedBill | |
| * @return Response | |
| */ | |
| public function show(RejectedBill $rejectedBill) | |
| { | |
| // | |
| } | |
| /** | |
| * Show the form for editing the specified resource. | |
| * | |
| * @param RejectedBill $rejectedBill | |
| * @param Request $request | |
| * @return Factory|RedirectResponse|Response|Redirector|View | |
| */ | |
| public function edit(RejectedBill $rejectedBill,Request $request) | |
| { | |
| if(!Gate::allows('退货管理-编辑')){ return redirect(url('/')); } | |
| $filterParams=$request->input('filterParams'); | |
| Session::put('rejected.index.filterParams',$filterParams); | |
| $user=Auth::user(); | |
| $owners=Owner::all()->whereIn('id', | |
| $user?$user->getPermittingOwnerIdsAttribute():[])->sortBy('name'); | |
| $logistics=Logistic::all()->sortBy('name'); | |
| $qualityLabels=QualityLabel::all()->sortBy('name'); | |
| return view('rejected.edit',compact('owners','logistics','qualityLabels','rejectedBill')); | |
| } | |
| /** | |
| * Update the specified resource in storage. | |
| * | |
| * @param Request $request | |
| * @param RejectedBill $rejectedBill | |
| * @return Response | |
| */ | |
| public function update(Request $request, RejectedBill $rejectedBill) | |
| { | |
| // | |
| } | |
| public function destroy(RejectedBill $rejectedBill) | |
| { | |
| if(!Gate::allows('退货管理-删除')){ return redirect(url('/'));} | |
| $re=$rejectedBill->delete(); | |
| $this->log(__METHOD__,__FUNCTION__,$rejectedBill->toJson(),Auth::user()['id']); | |
| return ['success'=>$re]; | |
| } | |
| } |