function make_rand_wo() { global $WOProjects; global $WOIPTeams; global $WOPriorities; $lines = file("docs/randomtext.txt", FILE_USE_INCLUDE_PATH); $titles = file("docs/randomnames.txt", FILE_USE_INCLUDE_PATH); $accounts = get_all_accounts(); $revs = array(0, 0, 0, 1, 1, 1, 1, 1, 1, 2, 2, 2, 3, 3, 3, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12); $pris = array(0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 3, 3); $app = array(false, false, false, true, true, true, true, true, true, true); $nsuccess = 0; $na = 0; $nas = 0; $nf = 0; $nc = 0; $nact = 0; $nacap = 0; $nwo = count($titles); foreach ($titles as $t) { $data = array(); $data["Title"] = trim($t); $data["Description"] = trim($lines[rand(0, count($lines) - 1)]); $data["Priority"] = $WOPriorities[$pris[rand(0, count($pris) - 1)]]; $data["Project"] = $WOProjects[rand(1, count($WOProjects) - 1)]; $data["Revision"] = $revs[rand(0, count($revs) - 1)]; $data["Requestor"] = $WOIPTeams[rand(1, count($WOIPTeams) - 1)]; $data["Receiver"] = $WOIPTeams[rand(1, count($WOIPTeams) - 1)]; $data["AuthorID"] = $accounts[rand(0, count($accounts) - 1)]; $data["DateCreated"] = date('Y-m-d', time() - rand(0, 30) * 24 * 3600); $data["DateNeedBy"] = date('Y-m-d', time() + rand(0, 30) * 24 * 3600); $data["Approved"] = false; $data["ApprovedByCap"] = false; $data["Assigned"] = false; $data["Finished"] = false; $data["Closed"] = false; $data["Active"] = true; if ($data["Revision"] > 0) { $data["Approved"] = rand(0, 100) > 20; $data["ApprovedByCap"] = rand(0, 100) > 85; } if ($data["Approved"] || $data["ApprovedByCap"]) { $data["Assigned"] = rand(0, 100) > 30; $data["Finished"] = rand(0, 100) > 60; } if ($data["Finished"]) { $data["Closed"] = rand(0, 100) > 20; } if (!$data["Closed"]) { $data["Closed"] = rand(0, 100) > 95; } $data["Active"] = !(rand(0, 100) > 98); $result = CreateNewWorkOrder($data); if ($result[1] === true) { $nsuccess++; if ($data["Approved"]) { $na++; } if ($data["ApprovedByCap"]) { $nacap++; } if ($data["Assigned"]) { $nas++; } if ($data["Finished"]) { $nf++; } if ($data["Closed"]) { $nc++; } if (!$data["Active"]) { $nact++; } } else { echo '<br>' . $result[1] . $data["Title"]; } } $msg = "WOs added=" . $nsuccess . "\n"; $msg .= "App, CapApp= " . $na . ', ' . $nacap . ' ' . "\n"; $msg .= "Asgnd= " . $nas . ', Fin=' . $nf . ' Csd=' . $nc . ", NotAct=" . $nact; return $msg; }
goto GenerateHtml; } $dtt = sprintf("%04d-%02d-%02d", $dgood["year"], $dgood["month"], $dgood["day"]); $data = ExtractValuesFromParamList($param_list); // Add some important stuff $data["Revision"] = 0; $data["AuthorID"] = $userid; $data["DateNeedBy"] = $dtt; $data["DateCreated"] = date('Y-m-d'); $data["Assigned"] = false; $data["Approved"] = false; $data["ApprovedByCap"] = false; $data["Finished"] = false; $data["Closed"] = false; $data["Active"] = true; $r = CreateNewWorkOrder($data); if ($r[1] !== true) { $error_msg = $r[1]; $doform = true; goto GenerateHtml; } $wid = $r[0]; PopulateParamList($param_list, $data); $success_msg = "New work order " . WIDStrHtml($wid, 0, false) . " created!"; $link_to_view = "wo_display.php?wid=" . $wid; $doform = false; } GenerateHtml: $picid = GetPicIDForUserID($userid); if ($picid > 0) { $picurl = PicUrl($picid, "thumb");
function GenerateBulkWO($params) { global $WOIPTeams; $loc = rmabs(__FILE__ . "GenerateBulkWO"); $sql = 'SELECT * FROM AllActiveUsersView ORDER BY LastName, FirstName'; $result = SqlQuery($loc, $sql); $d = array(); $num = 0; $matchtags = ArrayFromSlashStr($params["FilterTags"]); if (empty($matchtags)) { $matchtags = array("Worker"); } $title_template = $params["Title"]; $nerr = 0; $nok = 0; $wid0 = 0; $wid1 = 0; $num = 0; while ($userinfo = $result->fetch_assoc()) { // Decide if this person should get a WO. $taglist = ArrayFromSlashStr($userinfo["Tags"]); if (TagMatch(array("Guest"), $taglist)) { continue; } // Guests NEVER get one. if (!TagMatch($matchtags, $taglist)) { continue; } // We passed the test, this person gets one! // Figure out the receiving IPT. $ipt = $userinfo["IPT"]; if (empty($ipt)) { $ipt = $WOIPTeams[8]; } // Hopefully this is management. $params["Receiver"] = $ipt; $num++; $snum = sprintf("%d", $num); $params["Title"] = TemplateReplace($title_template, $snum, "##"); $rwo = CreateNewWorkOrder($params); $wid = $rwo[0]; if ($wid == 0) { // failed. log_error($loc, array("Failed to Create Bulk WO. Reason: " . $rwo[1], 'WO Title: ' . $params["Title"])); $nerr++; continue; } // Add assingment MakeAssignment($wid, $userinfo["UserID"]); if ($nok == 0) { $wid0 = $wid; } $wid1 = $wid; $nok++; } $msg = 'Number of WOs Created = ' . $nok . '. Number of Failures = ' . $nerr . '.'; $msg .= " WID=" . $wid0 . " to " . $wid1 . "."; log_msg($loc, "Bulk WO Created. WIDs " . $wid0 . " to " . $wid1); return $msg; }