/** * 股票资料写入器 * @param User $user */ public function upload_stock_data(User $user, $dataNum, $excel_data) { $em = $this->getDoctrine()->getManager(); $data = $em->getRepository('AppBundle:Stock')->findAll(); $stockNames = array(); foreach ($data as $data_obj) { $stockNames[] = $data_obj->getStockName(); } for ($i = 1; $i < $dataNum; $i++) { if (in_array($excel_data[$i][1], $stockNames)) { $stock_obj = $em->getRepository('AppBundle:Stock')->findBy(array('stock_name' => $excel_data[$i][1])); $stock_obj[0]->setStockId($excel_data[$i][0]); $stock_obj[0]->setStockName($excel_data[$i][1]); $stock_obj[0]->setBuyDate(new \DateTime($excel_data[$i][2])); $stock_obj[0]->setPosition($excel_data[$i][3]); $stock_obj[0]->setBuyingPrice($excel_data[$i][4]); $stock_obj[0]->setCurrentPrice($excel_data[$i][5]); $stock_obj[0]->setNote($excel_data[$i][6]); $stock_obj[0]->setUser($user); $em->flush(); } else { $stock_obj = new Stock(); $stock_obj->setStockId($excel_data[$i][0]); $stock_obj->setStockName($excel_data[$i][1]); $stock_obj->setBuyDate(new \DateTime($excel_data[$i][2])); $stock_obj->setPosition($excel_data[$i][3]); $stock_obj->setBuyingPrice($excel_data[$i][4]); $stock_obj->setCurrentPrice($excel_data[$i][5]); $stock_obj->setNote($excel_data[$i][6]); $stock_obj->setUser($user); $em->persist($stock_obj); $em->flush(); } } }