Example #1
0
 /**
  * Store a newly created resource in storage.
  *
  * @param  Request  $request
  * @return Response
  */
 public function store(Request $request)
 {
     //
     $rules = array('projectNum' => 'required', 'create_at' => 'required', 'pjsales' => 'required', 'pjContacter' => 'required', 'pjContacterPhone' => 'required', 'pjContacterEmail' => 'email|required', 'cmCode' => 'required', 'cmShort' => 'required', 'e_shortName' => 'required', 'customer_id' => 'required', 'c_name' => 'required', 'institute' => 'required', 'department' => 'required', 'email' => 'email|required', 'contacter' => 'required', 'contacterPhone' => 'required', 'contacterEmail' => 'email|required', 'address' => 'required', 'sales' => 'required', 'PJclass' => 'required', 'PJservice' => 'required', 'PJspecies' => 'required');
     $validator = Validator::make($request->all(), $rules);
     if ($validator->fails()) {
         return back()->withErrors($validator)->withInput();
     }
     $customer_id = $request->get('customer_id');
     if ($customer_id == 0) {
         $customer = new Customer(array('cmCode' => $request->get('cmCode'), 'cmShort' => $request->get('cmShort'), 'c_name' => $request->get('c_name'), 'e_shortName' => $request->get('e_shortName'), 'institute' => $request->get('institute'), 'department' => $request->get('department'), 'fax' => $request->get('fax'), 'phone' => $request->get('phone'), 'email' => $request->get('email'), 'contacter' => $request->get('contacter'), 'contacterPhone' => $request->get('contacterPhone'), 'contacterEmail' => $request->get('contacterEmail'), 'address' => $request->get('address'), 'salesman' => $request->get('sales')));
         $salesman = User::findOrFail($request->get('sales'));
         $customer->salesman()->associate($salesman);
         $customer->save();
         $last = DB::table('customers')->orderBy('created_at', 'desc')->first();
         $customer_id = $last->id;
     } else {
         $customer = Customer::findOrFail($customer_id);
         $customer->update(['cmCode' => $request->get('cmCode'), 'cmShort' => $request->get('cmShort'), 'c_name' => $request->get('c_name'), 'e_shortName' => $request->get('e_shortName'), 'institute' => $request->get('institute'), 'department' => $request->get('department'), 'fax' => $request->get('fax'), 'phone' => $request->get('phone'), 'email' => $request->get('email'), 'contacter' => $request->get('contacter'), 'contacterPhone' => $request->get('contacterPhone'), 'contacterEmail' => $request->get('contacterEmail'), 'address' => $request->get('address')]);
         $salesman = User::findOrFail($request->get('sales'));
         $customer->salesman()->associate($salesman);
         $customer->save();
     }
     if ($request->get('PJservice') == 'Others') {
         $PJservice = $request->get('PJserviceNote');
     } else {
         $PJservice = $request->get('PJservice');
     }
     $project = new Project(array('projectNum' => $request->get('projectNum'), 'PJtype' => $request->get('PJtype'), 'PJclass' => $request->get('PJclass'), 'PJservice' => $PJservice, 'PJspecies' => $request->get('PJspecies'), 'note' => $request->get('note'), 'contacter' => $request->get('contacter'), 'contacterPhone' => $request->get('contacterPhone'), 'contacterEmail' => $request->get('contacterEmail'), 'status' => '新建'));
     $user = \Auth::user();
     $project->user()->associate($user);
     $customer = Customer::findOrFail($customer_id);
     $project->customer()->associate($customer);
     $pjsalesman = User::findOrFail($request->get('pjsales'));
     $project->salesman = $pjsalesman->id;
     $project->save();
     if (empty($request->file('file'))) {
         $fileName = null;
     } else {
         $fileName = $project->id . '.' . $request->file('file')->getClientOriginalExtension();
         $request->file('file')->move(base_path() . '/storeFiles/ngs/quotation/', $fileName);
     }
     $project->update(['fileName' => $fileName]);
     return \Redirect::to('research/ngs/projects/index')->with('message', 'Your Project has been created!');
 }