コード例 #1
0
ファイル: PmDB.php プロジェクト: sunxfancy/Questionnaire
 public static function insertInquery($data, $project_id)
 {
     try {
         self::delInquery($project_id);
         #插入新数据
         $manager = new TxManager();
         $transaction = $manager->get();
         foreach ($data as $value) {
             $inquery = new InqueryQuestion();
             $inquery->setTransaction($transaction);
             foreach ($value as $key => $svalue) {
                 $inquery->{$key} = $svalue;
             }
             $inquery->project_id = $project_id;
             if ($inquery->save() == false) {
                 $transaction->rollback('数据更新失败-3');
             }
         }
         $type = false;
         #更新项目状态
         $project = Project::findFirst(array("id=?1", 'bind' => array(1 => $project_id)));
         $project->setTransaction($transaction);
         $state = self::getProjectStateNext($project, $type);
         $project->state = $state;
         if ($project->save() == false) {
             $transaction->rollback("数据插入失败-4");
         }
         $transaction->commit();
         return true;
     } catch (TxFailed $e) {
         throw new Exception($e->getMessage());
     }
 }