prepare($q); $query->execute(); } // Test de la connexion à la base try{ global $bdd01; $pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION; $pdo_options[PDO::MYSQL_ATTR_INIT_COMMAND] = "SET NAMES utf8"; $bddold = new PDO("mysql:host=".$dbhost.";dbname=scheduleold",$dblogin,$dbpassword,$pdo_options); } catch (Exception $e){ echo "Erreur connection bdd old = ".$dbhost." ".$dblogin." ".$dbpassword."\n"; die(); } // Test de la connexion à la base try{ global $bdd01; $pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION; $pdo_options[PDO::MYSQL_ATTR_INIT_COMMAND] = "SET NAMES utf8"; $bddnew = new PDO("mysql:host=".$dbhost.";dbname=schedule",$dblogin,$dbpassword,$pdo_options); } catch (Exception $e){ echo "Erreur connection bdd new\n"; die(); } writeligne(""); writeligne("MIGRATION"); writeligne(""); writeligne("Purge des Tables Scheudle"); Purge("userproject"); Purge("timer"); Purge("event"); Purge("penalty"); Purge("task"); Purge("offer"); Purge("project"); Purge("userjob"); Purge("user"); Purge("service"); Purge("nature"); Purge("customer"); Purge("breakday"); Purge("job"); writeligne(""); writeligne("== Récupération Customer"); $q="SELECT * FROM schedule_customer"; $queryold=$bddold->prepare($q); $queryold->execute(); while($row=$queryold->fetch()) { writeligne($row["customer_name"]); $q="INSERT IGNORE INTO customer (id, name, keypass) VALUES (?,?,?)"; $query=$bddnew->prepare($q); $query->execute([$row["customer_id"],$row["customer_name"],$row["customer_key"]]); } writeligne(""); writeligne("== Récupération Nature"); $q="SELECT * FROM schedule_nature"; $queryold=$bddold->prepare($q); $queryold->execute(); while($row=$queryold->fetch()) { writeligne($row["nature_name"]); $q="INSERT IGNORE INTO nature (id, name, isvacation) VALUES (?,?,?)"; $query=$bddnew->prepare($q); $query->execute([$row["nature_id"],$row["nature_name"],false]); } writeligne("Congés"); $q="INSERT IGNORE INTO nature (id, name, isvacation) VALUES (?,?,?)"; $query=$bddnew->prepare($q); $query->execute([-200,"Congés",true]); writeligne("Temps Partiel"); $q="INSERT IGNORE INTO nature (id, name, isvacation) VALUES (?,?,?)"; $query=$bddnew->prepare($q); $query->execute([-190,"Temps Partiel",true]); writeligne(""); writeligne("== Récupération Service"); $q="SELECT * FROM schedule_service"; $queryold=$bddold->prepare($q); $queryold->execute(); while($row=$queryold->fetch()) { writeligne($row["service_name"]); $q="INSERT IGNORE INTO service (id, name) VALUES (?,?)"; $query=$bddnew->prepare($q); $query->execute([$row["service_id"],$row["service_name"]]); } writeligne(""); writeligne("== Récupération User"); $q="SELECT * FROM schedule_user WHERE user_login!='system'"; $queryold=$bddold->prepare($q); $queryold->execute(); while($row=$queryold->fetch()) { writeligne($row["user_login"]); $q="INSERT IGNORE INTO user (id, username, firstname, lastname, email, service_id, apikey, password) VALUES (?,?,?,?,?,?,?,?)"; $query=$bddnew->prepare($q); $query->execute([$row["user_id"],$row["user_login"],$row["user_firstname"],$row["user_lastname"],$row["user_email"],$row["user_service"],$row["user_login"],"nopassword" ]); $output = shell_exec('/var/www/html/schedule/bin/console app:setPassword '.$row["user_login"].' '.$row["user_login"]); if($row["user_login"]=="afornerot") $roles='ROLE_ADMIN,ROLE_USER'; else { switch($row["user_profil"]) { case 1: $roles='ROLE_ADMIN'; break; case 2: $roles='ROLE_VALIDATOR,ROLE_MASTER,ROLE_USER'; break; case 50: $roles='ROLE_USER'; break; case 99: $roles='ROLE_VISITOR'; break; default: $roles='ROLE_VISITOR'; break; } } $output = shell_exec('/var/www/html/schedule/bin/console app:setRoles '.$row["user_login"].' '.$roles); } writeligne(""); writeligne("== Récupération Project"); $q="SELECT * FROM schedule_project"; $queryold=$bddold->prepare($q); $queryold->execute(); while($row=$queryold->fetch()) { writeligne($row["project_name"]); $q="INSERT IGNORE INTO project (id, name, active, service_id, customer_id ) VALUES (?,?,?,?,?)"; $query=$bddnew->prepare($q); $query->execute([$row["project_id"],$row["project_name"],$row["project_actif"],$row["project_service"],$row["project_customer"] ]); } writeligne(""); writeligne("== Récupération Offer"); $q="SELECT * FROM schedule_order"; $queryold=$bddold->prepare($q); $queryold->execute(); while($row=$queryold->fetch()) { writeligne($row["order_name"]); $q="INSERT IGNORE INTO offer (id, name, ref, quantity, pu, validate, active, project_id ) VALUES (?,?,?,?,?,?,?,?)"; $query=$bddnew->prepare($q); $query->execute([$row["order_id"],$row["order_name"],$row["order_ref"],$row["order_quantity"],$row["order_pu"],$row["order_validate"],$row["order_actif"],$row["order_project"] ]); } writeligne(""); writeligne("== Récupération Task"); $q="SELECT * FROM schedule_task"; $queryold=$bddold->prepare($q); $queryold->execute(); while($row=$queryold->fetch()) { writeligne($row["task_name"]); $nature=$row["task_nature"]; if($row["task_id"]<=-70) $nature=-200; if($row["task_id"]==-85 || $row["task_id"]==-70) $nature=-190; $q="INSERT IGNORE INTO task (id, name, color, quantity, validate, project_id, nature_id ) VALUES (?,?,?,?,?,?,?)"; $quantity=($row["task_quantity"]==0?null:$row["task_quantity"]); $query=$bddnew->prepare($q); $query->execute([$row["task_id"],$row["task_name"],"#".$row["task_color"],$quantity,$row["task_validate"],$row["task_project"],$nature ]); } writeligne(""); writeligne("== Récupération Event"); $q="SELECT * FROM schedule_event, schedule_task WHERE event_task=task_id"; $queryold=$bddold->prepare($q); $queryold->execute(); while($row=$queryold->fetch()) { // Event vacation ? $isvacation=false; if($row["task_id"]<=-70) $isvacation=true; if($row["task_id"]==-85 || $row["task_id"]==-70) $isvacation=true; // Validation $validate=$row["event_validate"]; $validateholiday=false; if($isvacation) $validateholiday=$row["event_validate"]; // Génération de l'event writeligne($row["event_id"]); $q="INSERT IGNORE INTO event (id, description, start, end, allday, duration, validate, validateholiday, task_id, user_id ) VALUES (?,?,?,?,?,?,?,?,?,?)"; $query=$bddnew->prepare($q); $query->execute([$row["event_id"],$row["event_description"],$row["event_start"],$row["event_end"],$row["event_allday"],$row["event_duration"],$validate,$validateholiday,$row["event_task"],$row["event_user"] ]); } writeligne(""); writeligne("== Récupération Penalty"); $q="SELECT * FROM schedule_penalty"; $queryold=$bddold->prepare($q); $queryold->execute(); while($row=$queryold->fetch()) { writeligne($row["penalty_id"]); $q="INSERT IGNORE INTO penalty (id, description, start, end, allday, duration, validate, task_id, user_id ) VALUES (?,?,?,?,?,?,?,?,?)"; $query=$bddnew->prepare($q); $query->execute([$row["penalty_id"],$row["penalty_description"],$row["penalty_start"],$row["penalty_end"],$row["penalty_allday"],$row["penalty_duration"],$row["penalty_validate"],$row["penalty_task"],$row["penalty_user"] ]); } writeligne(""); writeligne("== Récupération Breakday"); $q="SELECT * FROM schedule_breakday"; $queryold=$bddold->prepare($q); $queryold->execute(); while($row=$queryold->fetch()) { writeligne($row["breakday_id"]); $q="INSERT IGNORE INTO breakday (id, start, end ) VALUES (?,?,?)"; $query=$bddnew->prepare($q); $query->execute([$row["breakday_id"],$row["breakday_start"],$row["breakday_end"] ]); } writeligne(""); writeligne("== Récupération Job"); $q="SELECT * FROM schedule_job"; $queryold=$bddold->prepare($q); $queryold->execute(); while($row=$queryold->fetch()) { writeligne($row["job_id"]); $q="INSERT IGNORE INTO job (id, name, type ) VALUES (?,?,?)"; $query=$bddnew->prepare($q); $query->execute([$row["job_id"],$row["job_name"],$row["type"] ]); } writeligne(""); writeligne("== Récupération UserJob"); $q="SELECT * FROM schedule_user_jobs WHERE project_id=-100"; $queryold=$bddold->prepare($q); $queryold->execute(); while($row=$queryold->fetch()) { writeligne($row["user_job_id"]); $q="INSERT IGNORE INTO userjob (user, job ) VALUES (?,?)"; $query=$bddnew->prepare($q); $query->execute([$row["user_id"],$row["job_id"] ]); } echo "\n\n";