diff --git a/.gitignore b/.gitignore index 637b61e..8fcd0f5 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ .idea/ temp/ -vendor/ \ No newline at end of file +vendor/ +build.zip diff --git a/commands/Bot.php b/commands/Bot.php new file mode 100644 index 0000000..2ba680e --- /dev/null +++ b/commands/Bot.php @@ -0,0 +1,34 @@ +where('value', '=', 1)->get(); + if (isset($settings['0']['value'])) { + $dishes = Dishes::where('is_bot_export', '=', 0)->update(['is_bot_export' => 1]); + $folders = Folders::where('is_bot_export', '=', 0)->update(['is_bot_export' => 1]); + } + $ordersinfo = Tasks::where('method', '=', 'orderinfo')->get(); + $delete_params = ['closed', 'deleted']; + foreach ($ordersinfo as $more) { + $order = Orders::where('id', '=', $more['more'])->whereIn('status', $delete_params)->get(); + foreach ($order as $value) { + $delete = Tasks::where('method', '=', 'orderinfo')->where('more', '=', $value['id'])->delete(); + } + } + return [ + 'status' => 'success', + ]; + } +} \ No newline at end of file diff --git a/commands/ClientFile.php b/commands/ClientFile.php new file mode 100644 index 0000000..d5bae49 --- /dev/null +++ b/commands/ClientFile.php @@ -0,0 +1,99 @@ +where('is_active', '=', 1)->where('work_code', '=', 1)->first(); + $tmp_dirname = __DIR__ . "\\..\\..\\..\\Exchange\\" . $terminal['key'] . "\\tmp\\" . $terminal['key'] . "\\"; + $dirname = __DIR__ . "\\..\\..\\..\\Exchange\\" . $terminal['key'] . "\\"; + $code = ''; + if (isset($input['complete'])) { + foreach (glob($tmp_dirname . "*.tmp") as $filename) { + $code .= file_get_contents($filename); + } + $filename = str_replace(' ', '_', date("d.m.Y H.i.s")) . '.csv'; + file_put_contents($dirname . $filename, $code); + $files = glob($tmp_dirname . "*"); + foreach ($files as $file) { + if (is_file($file)) { + unlink($file); + } + } + $files = glob($dirname . "*.*"); + usort($files, function ($a, $b) { + return filemtime($a) < filemtime($b); + }); + foreach ($files as $plk2) { + $file_array[] = str_replace($dirname, '', $plk2); + } + if (array_key_exists(0, $file_array)) { + $file = date("d.m.Y H:i:s", filemtime($dirname . $file_array['0'])); + } else { + $file = ''; + } + $baseCSV = file($dirname . $filename, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES); + + foreach ($baseCSV as $itemBaseCSV) { + $arrLineCsv = explode(";", $itemBaseCSV); + $arrUniqFinish[$arrLineCsv[0] . ";" . $arrLineCsv[1]] = $arrLineCsv[1]; + } + $arrUniqFinish = array_unique($arrUniqFinish); + + foreach ($arrUniqFinish as $keyArr => $valueArr) { + $finishSavedCsv[] = $keyArr; + } + file_put_contents($dirname . $filename, implode("\n", $finishSavedCsv)); + return [ + 'status' => 'success', + 'filename' => $filename, + 'filedate' => $file, + ]; + } + $clientsCount = Client::count(); + $urlThread = $input['th']; + $mainThreads = 4; + $countPerThread = ceil($clientsCount / $mainThreads); + $offset = ($urlThread - 1) * $countPerThread; + $clients = Client::with('clientPhone:client_guid,phone')->skip($offset)->take($countPerThread)->get(); + + if (!is_dir($tmp_dirname)) { + mkdir($tmp_dirname, 0755, 'w+'); + } + $filename = str_replace(' ', '_', date("d.m.Y H.i.s")) . '_' . $urlThread . '.tmp'; + $handle = fopen($tmp_dirname . $filename, 'w+'); + fputs($handle, chr(0xEF) . chr(0xBB) . chr(0xBF)); // BOM + $filename = str_replace('_', ' ', $filename); + foreach ($clients as $row) { + if (($row['clientPhone']->phone !== '') && ($row['clientPhone']->phone !== '+375 ( ) - -')) { + $row = array($row['name'], $row['clientPhone']->phone); + fputcsv($handle, $row, ';'); + } + } + fclose($handle); + $files = glob($tmp_dirname . "*.*"); + usort($files, function ($a, $b) { + return filemtime($a) < filemtime($b); + }); + foreach ($files as $plk2) { + $file_array[] = str_replace($tmp_dirname, '', $plk2); + } + if (array_key_exists(0, $file_array)) { + $file = date("d.m.Y H:i:s", filemtime($tmp_dirname . $file_array['0'])); + } else { + $file = ''; + } + return [ + 'status' => 'success', + 'filename' => $filename, + 'filedate' => $file, + ]; + } +} \ No newline at end of file diff --git a/commands/ClientGroup.php b/commands/ClientGroup.php new file mode 100644 index 0000000..2759143 --- /dev/null +++ b/commands/ClientGroup.php @@ -0,0 +1,55 @@ +count() == 0) { + $group = new ClientsGroup; + $group->code = '0'; + $group->name = 'Без группы'; + $group->save(); + } + $client_groups = ClientsGroup::orderBy('code')->get(); + foreach ($client_groups as $client_group) { + $out[] = array('id' => $client_group['id'], 'name' => $client_group['name']); + } + $terminal = Terminal::where('soft', '=', 1)->where('is_active', '=', 1)->where('work_code', '=', 1)->first(); + $dir = __DIR__ . "/../../../Exchange/" . $terminal['key'] . "/"; + if (!is_dir($dir)) { + mkdir($dir, 0755, 'w+'); + } + + $files = glob($dir . "*.*"); + if (count($files) > 0) { + usort($files, function ($a, $b) { + return filemtime($a) < filemtime($b); + }); + + foreach ($files as $plk2) { + $file_array[] = str_replace($dir, '', $plk2); + } + $filename = $file_array['0']; + $file = date("d.m.Y H:i:s", filemtime(__DIR__ . "/../../../Exchange/" . $terminal['key'] . "/" . $file_array['0'])); + } else { + $file_array = ''; + $filename = ''; + $file = ''; + } + return [ + 'status' => 'success', + 'groups' => $out, + 'terminalKey' => $terminal['key'], + 'files' => $files, + 'filename' => $filename, + 'filedate' => $file, + ]; + } +} \ No newline at end of file diff --git a/commands/Clients.php b/commands/Clients.php new file mode 100644 index 0000000..ec40e32 --- /dev/null +++ b/commands/Clients.php @@ -0,0 +1,56 @@ +count() == 0) { + $group = new ClientsGroup([ + 'code' => '0', + 'name' => 'Без группы', + ]); + $group->save(); + } + $countPerPage = 25; + $offset = ($input['page'] - 1) * $countPerPage; + if ($input['group_id'] == 0) { + $group = ClientsGroup::where('code', '=', $input['group_id'])->first(); + } else { + $group = ClientsGroup::where('id', '=', $input['group_id'])->first(); + } + $clients = Client::where('group_id', '=', $group['code'])->skip($offset)->take($countPerPage)->get(); + $total = Client::where('group_id', '=', $group['code'])->count(); + if ($total == NULL) { + return [ + 'status' => 'success', + 'clients' => array(), + 'total' => 0, + 'size' => $countPerPage, + 'pages' => 1, + 'currentGroup' => $group['id'], + ]; + } else { + + foreach ($clients as $client) { + $phone = ClientsPhone::where('client_guid', '=', $client['user_code'])->first(); + $out[] = array('id' => $client['id'], 'name' => $client['name'], 'phone' => $phone['phone']); + } + return [ + 'status' => 'success', + 'clients' => $out, + 'total' => $total, + 'size' => $countPerPage, + 'pages' => ceil($total / $countPerPage), + 'currentGroup' => $group['id'], + ]; + } + } +} \ No newline at end of file diff --git a/commands/CreateBarcode.php b/commands/CreateBarcode.php new file mode 100644 index 0000000..7e194fe --- /dev/null +++ b/commands/CreateBarcode.php @@ -0,0 +1,53 @@ +first(); + if (($input['start'] <= $input['end']) && (srtlen($input['start']) == srtlen($input['end']))) { + for ($i = $input['start']; $i <= $input['end']; $i++) { + $total = Client::where('name', '=', $i)->count(); + $client = new Client; + if ($total >= 1) { + $total = $total + 1; + $client->name = '#' . $total . ' ' . urldecode($i); + } else { + $client->name = urldecode($i); + } + $client->user_code = strtoupper(md5(time() + $i)); + $client->group_id = $group['code']; + $client->is_special_price = 0; + + $barcode = new ClientsBarcode; + $barcode->code_id = $i; + $barcode->name = ''; + $barcode->client_guid = $client->user_code; + $barcode->value = $i; + $barcode->block = 0; + $barcode->symptom_block = 0; + + $barcode->save(); + $client->save(); + } + + return [ + 'status' => 'success', + 'message' => 'Штрих коды созданы', + ]; + } else { + return [ + 'status' => 'error', + 'message' => 'Проверьте правильность введенных данных', + ]; + } + } +} \ No newline at end of file diff --git a/commands/CreateClient.php b/commands/CreateClient.php new file mode 100644 index 0000000..86ec7e5 --- /dev/null +++ b/commands/CreateClient.php @@ -0,0 +1,73 @@ +first(); + $total = Client::where('name', '=', $input['name'])->count(); + if ($input['is_special_price'] == 'true') { + $specialPrice = 1; + } else { + $specialPrice = 0; + } + $client = new Client; + if ($total >= 1) { + $total = $total + 1; + $client->name = '#' . $total . ' ' . urldecode($input['name']); + } else { + $client->name = urldecode($input['name']); + } + $client->user_code = strtoupper(md5(time())); + $client->group_id = $group['code']; + $client->is_special_price = $specialPrice; + + $clientEmail = new ClientsEmail; + $clientEmail->email = urldecode($input['email']); + $clientEmail->client_guid = $client->user_code; + + $clientAddress = new ClientsAddress; + $clientAddress->address = urldecode($input['address']); + $clientAddress->client_guid = $client->user_code; + + $clientPhone = new ClientsPhone; + if ($input['phone'] !== '') { + $phoneData = urldecode($input['phone']); + $phone = '+375 (' . substr($phoneData, 0, 2) . ') ' . substr($phoneData, 2, 3) . '-' . substr($phoneData, 5, 2) . '-' . substr($phoneData, 7, 2); + } else { + $phone = ''; + } + $clientPhone->phone = $phone; + $clientPhone->client_guid = $client->user_code; + + $clientBarcode = new ClientsBarcode; + $clientBarcode->code_id = urldecode($input['barcode']); + $clientBarcode->name = ''; + $clientBarcode->client_guid = $client->user_code; + $clientBarcode->value = urldecode($input['barcode']); + $clientBarcode->block = 0; + $clientBarcode->symptom_block = 0; + + $clientBarcode->save(); + $clientEmail->save(); + $clientAddress->save(); + $client->save(); + $clientPhone->save(); + + return [ + 'status' => 'success', + 'message' => 'Клиент создан', + ]; + } +} \ No newline at end of file diff --git a/commands/Equipment.php b/commands/Equipment.php new file mode 100644 index 0000000..fc67277 --- /dev/null +++ b/commands/Equipment.php @@ -0,0 +1,35 @@ +where('key', '=', $input['terminal']) + ->get(); + foreach ($terminals as $terminal) { + $terminal_data = array('work_code' => $terminal['work_code'], 'work_group' => $terminal['work_group']); + } + $printer_groups = Printer::select('code', 'name') + ->where('is_history', '=', 0) + ->get(); + $printers = PrinterSettings::select('name', 'id', 'ip', 'com_port', 'type', 'speed', 'printer_group', 'template', 'size', 'driver', 'codepage', 'more') + ->where('workgroup', '=', $terminal_data['work_group']) + ->where('workcode', '=', $terminal_data['work_code']) + ->get(); + return [ + 'status' => 'success', + 'terminal_data' => $terminal_data, + 'printer_groups' => $printer_groups, + 'printers' => $printers, + ]; + } +} \ No newline at end of file diff --git a/commands/Fiscals.php b/commands/Fiscals.php new file mode 100644 index 0000000..9ae6f33 --- /dev/null +++ b/commands/Fiscals.php @@ -0,0 +1,22 @@ +where('key', '=', $input['terminal'])->get(); + foreach ($terminals as $terminal) { + $out = array('work_code' => $terminal['work_code'], 'work_group' => $terminal['work_group']); + } + return [ + 'status' => 'success', + 'terminal_data' => $out, + ]; + } +} \ No newline at end of file diff --git a/commands/HelloWorld.php b/commands/HelloWorld.php deleted file mode 100644 index b1241b6..0000000 --- a/commands/HelloWorld.php +++ /dev/null @@ -1,22 +0,0 @@ - 'success', - 'users' => $users - ]; - } -} \ No newline at end of file diff --git a/commands/Import.php b/commands/Import.php new file mode 100644 index 0000000..b400244 --- /dev/null +++ b/commands/Import.php @@ -0,0 +1,87 @@ +where('is_active', '=', 1)->where('work_code', '=', 1)->get(); + $end_date = date('m/d/Y H:i:s', strtotime($input['end_date']) + 86399); + $start_date = date('m/d/Y H:i:s', strtotime($input['start_date'])); + foreach ($terminals as $terminal) { + $url = $HRCPortalURL . 'api/cloud/list?api=2.0&project_code=hrc&code=' . $terminal['key'] . '&folder=' . $folder; + $search = curl_init(); + + curl_setopt_array($search, array( + CURLOPT_URL => $url, + CURLOPT_RETURNTRANSFER => true, + CURLOPT_HEADER => false, + CURLOPT_MAXREDIRS => 10, + CURLOPT_TIMEOUT => 0, + CURLOPT_FOLLOWLOCATION => true, + CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, + )); + $search_response = curl_exec($search); + curl_close($search); + $responses = json_decode($search_response, TRUE)['files']; + foreach ($responses as $key => $response) { + if (array_key_exists('filename', $response)) { + $fulldate = date_parse_from_format('d-m-Y-H-i-s', $response['filename']); + $fulldate = mktime($fulldate['hour'], $fulldate['minute'], $fulldate['second'], $fulldate['month'], $fulldate['day'], $fulldate['year']); + if ($fulldate >= strtotime($start_date) && $fulldate <= strtotime($end_date)) { + $out[] = date('d-m-Y-H-i-s', $fulldate); + } + } + } + if (!isset($out)) { + return [ + 'status' => 'success', + 'message' => 'shifts not found', + ]; + } else { + foreach ($out as $filename) { + $path = '/backup/' . $filename . '.xml'; + $download_url = $HRCPortalURL . 'api/cloud/download?api=2.0&project_code=hrc&code=' . $terminal['key'] . '&path=' . $path; + $download = curl_init(); + + curl_setopt_array($download, array( + CURLOPT_URL => $download_url, + CURLOPT_RETURNTRANSFER => true, + CURLOPT_HEADER => false, + CURLOPT_MAXREDIRS => 10, + CURLOPT_TIMEOUT => 0, + CURLOPT_FOLLOWLOCATION => true, + CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, + )); + $download_response = curl_exec($download); + curl_close($download); + $file = json_decode($download_response, TRUE)['content']; + $params = array('code' => $terminal['key'], 'name' => $filename . '.xml', 'folder' => 'exchange', 'content' => $file, 'project_code' => 'hrc', 'api' => '2.0'); + $upload = curl_init(); + curl_setopt_array($upload, array( + CURLOPT_RETURNTRANSFER => true, + CURLOPT_HEADER => true, + CURLOPT_URL => $HRCPortalURL . 'api/cloud/upload', + CURLOPT_SSL_VERIFYHOST => 0, + CURLOPT_POST => true, + CURLOPT_POSTFIELDS => $params, + )); + $upload_response = curl_exec($upload); + curl_close($upload); + } + return [ + 'status' => 'success', + 'start_date' => strtotime($start_date), + 'end_date' => strtotime($end_date), + ]; + } + } + } +} \ No newline at end of file diff --git a/commands/OutOrders.php b/commands/OutOrders.php new file mode 100644 index 0000000..5a71e70 --- /dev/null +++ b/commands/OutOrders.php @@ -0,0 +1,138 @@ +where('id', '=', $input['shift_id'])->get(); + if (is_array($shifts) || is_object($shifts)) { + foreach ($shifts as $shift) { + $out = array('id' => $shift['id'], 'opened' => $shift['opened'], 'closed' => $shift['closed']); + } + } + $orders = Orders::select('id', 'order', 'created_at')->where('created_at', '>', $out['opened'])->where('created_at', '<=', $out['closed'])->get(); + $count_items = 0; + if (is_array($orders) || is_object($orders)) { + foreach ($orders as $order) { + $order_id = $order['id']; + $price = json_decode(base64_decode($order['order']), true)['price']; + $items = json_decode(base64_decode($order['order']), true)['items']; + $date = strtotime($order['created_at']); + $newformat = date('Y-m-d H:i:s', $date); + foreach ($items as $key => $item) { + $out_item[$key] = array( + 'id' => $item['id'], 'name' => $item['name'], 'count' => $item['count'], 'price' => $item['price'], + 'full_price' => $item['full_price'], + ); + $count_items += 1; + } + $remoteOrder[] = array( + 'id' => $order_id, + 'items_count' => $count_items, + 'items' => $out_item, + 'date' => $newformat, + 'price' => $price, + ); + unset($out_item); + $count_items = 0; + } + } + if (isset($remoteOrder)) { + $total_count = 0; + $total_price = 0; + foreach ($orders as $order) { + $total_count += 1; + $total_price += json_decode(base64_decode($order['order']), true)['price']; + } + $total = array('total_count' => $total_count, 'total_price' => $total_price); + return [ + 'status' => 'success', + 'message' => 'true', + 'shift' => $out, + 'orders' => $remoteOrder, + 'total' => $total, + ]; + } else { + return [ + 'status' => 'success', + 'message' => 'false', + ]; + } + } + if ((array_key_exists('start_date', $input)) === true) { + $start_t = strtotime($input['start_date']) + 1; + $end_t = strtotime($input['end_date']) - 1; + $start = date('Y-m-d H:i:s', $start_t); + $end = date('Y-m-d H:i:s', $end_t); + $orders = Orders::select('id', 'order', 'created_at')->where('created_at', '>', $start)->where('created_at', '<=', $end)->get(); + $count_items = 0; + if (is_array($orders) || is_object($orders)) { + foreach ($orders as $order) { + $order_id = $order['id']; + $price = json_decode(base64_decode($order['order']), true)['price']; + $items = json_decode(base64_decode($order['order']), true)['items']; + $date = strtotime($order['created_at']); + $newformat = date('Y-m-d H:i:s', $date); + foreach ($items as $key => $item) { + $out_item[$key] = array( + 'id' => $item['id'], + 'name' => $item['name'], + 'count' => $item['count'], + 'price' => $item['price'], + 'full_price' => $item['full_price'], + ); + $count_items += 1; + } + $remoteOrder[] = array( + 'id' => $order_id, + 'items_count' => $count_items, + 'items' => $out_item, + 'date' => $newformat, + 'price' => $price, + ); + unset($out_item); + $count_items = 0; + } + } + if (isset($remoteOrder)) { + $total_count = 0; + $total_price = 0; + if (is_array($orders) || is_object($orders)) { + foreach ($orders as $order) { + $total_count += 1; + $total_price += json_decode(base64_decode($order['order']), true)['price']; + } + } + $total = array('total_count' => $total_count, 'total_price' => $total_price); + $report = new Report; + $report->user_id = $input['admin_user_id']; + $report->name = 'Отчет по внешним заказам'; + $report->shift_id = 0; + $report->start_date = $start; + $report->end_date = $end; + $report->report_type = 'out'; + $report->save(); + return [ + 'status' => 'success', + 'message' => 'true', + 'orders' => $remoteOrder, + 'total' => $total, + ]; + } else { + return [ + 'status' => 'success', + 'message' => 'false', + ]; + } + } + } +} \ No newline at end of file diff --git a/commands/Printers.php b/commands/Printers.php new file mode 100644 index 0000000..90173e0 --- /dev/null +++ b/commands/Printers.php @@ -0,0 +1,71 @@ +where('key', '=', $input['terminal'])->get(); + foreach ($terminals as $terminal) { + $terminal_data = array('id' => $terminal['id'], 'work_code' => $terminal['work_code'], 'work_group' => $terminal['work_group']); + } + $first_printer_data = PrinterSettings::where('id', '=', $input['id'])->get(); + foreach ($first_printer_data as $old_printer_data) { + } + $printer_name = Printer::where('code', '=', $input['group'])->get(); + foreach ($printer_name as $group_name) { + } + if ($input['group'] == 0) { + $group_name['name'] = $input['name']; + } + if ($input['type'] == 'COM') { + $task[] = "UPDATE main.printers SET `name`='" . urldecode($group_name['name']) . "', `IP`=NULL, `port`=NULL, `COMport`='" . $input['com_port'] . "', `type`='" . $input['type'] . "', `size`=" . $input['size'] . ", `speed`=" . $input['speed'] . ", `driver`=NULL, `workcode`=" . $terminal_data['work_code'] . ", `workgroup`=" . $terminal_data['work_group'] . ",`printer_group`=" . $input['group'] . ", `template`='" . $input['template'] . "', `more`='" . urldecode($input['more']) . "' WHERE `name`='" . $old_printer_data['name'] . "' AND `workcode`=" . $terminal_data['work_code'] . " AND `workgroup`=" . $terminal_data['work_group'] . ";"; + $task = base64_encode(json_encode(array('queries' => $task), TRUE)); + $add_task = new Tasks; + $add_task->terminal_id = $terminal_data['id']; + $add_task->next_at = date("Y-m-d H:i:s"); + $add_task->method = 'runquery'; + $add_task->period = 0; + $add_task->is_cycle = 0; + $add_task->more = $task; + $add_task->save(); + } + if ($input['type'] == 'LAN') { + $task[] = "UPDATE main.printers SET `name`='" . urldecode($group_name['name']) . "', `IP`='" . $input['ip_address'] . "', `port`=9100, `COMport`=NULL, `type`='" . $input['type'] . "', `size`=" . $input['size'] . ", `speed`=NULL, `driver`=NULL, `workcode`=" . $terminal_data['work_code'] . ", `workgroup`=" . $terminal_data['work_group'] . ",`printer_group`=" . $input['group'] . ", `template`='" . $input['template'] . "', `more`='" . urldecode($input['more']) . "' WHERE `name`='" . $old_printer_data['name'] . "' AND `workcode`=" . $terminal_data['work_code'] . " AND `workgroup`=" . $terminal_data['work_group'] . ";"; + $task = base64_encode(json_encode(array('queries' => $task))); + $add_task = new Tasks; + $add_task->terminal_id = $terminal_data['id']; + $add_task->next_at = date("Y-m-d H:i:s"); + $add_task->method = 'runquery'; + $add_task->period = 0; + $add_task->is_cycle = 0; + $add_task->more = $task; + $add_task->save(); + } + if ($input['type'] == 'Windows') { + $task[] = "UPDATE main.printers SET `name`='" . urldecode($group_name['name']) . "', `IP`=NULL, `port`=NULL, `COMport`=NULL, `type`='" . $input['type'] . "', `size`=" . $input['size'] . ", `speed`=NULL, `driver`='" . urldecode($input['driver']) . "', `workcode`=" . $terminal_data['work_code'] . ", `workgroup`=" . $terminal_data['work_group'] . ",`printer_group`=" . $input['group'] . ", `template`='" . $input['template'] . "', `more`='" . urldecode($input['more']) . "' WHERE `name`='" . $old_printer_data['name'] . "' AND `workcode`=" . $terminal_data['work_code'] . " AND `workgroup`=" . $terminal_data['work_group'] . ";"; + $task = base64_encode(json_encode(array('queries' => $task))); + $add_task = new Tasks; + $add_task->terminal_id = $terminal_data['id']; + $add_task->next_at = date("Y-m-d H:i:s"); + $add_task->method = 'runquery'; + $add_task->period = 0; + $add_task->is_cycle = 0; + $add_task->more = $task; + $add_task->save(); + } + return [ + 'status' => 'success', + 'input' => $input, + 'task' => $task, + ]; + } +} \ No newline at end of file diff --git a/commands/TopDishes.php b/commands/TopDishes.php new file mode 100644 index 0000000..96b7def --- /dev/null +++ b/commands/TopDishes.php @@ -0,0 +1,70 @@ +', 0)->get()->unique('menu_code'); + $count = OnlineItems::where('menu_code', '>', 0)->count(); + if ($count > 0) { + foreach ($info as $key => $value) { + $out[] = $value; + } + foreach ($out as $key => $item) { + $dishInfo = Dishes::select('name') + ->where('code', '=', $item['menu_code']) + ->where('legacy_code', '=', $item['dish_code']) + ->where('is_history', '=', 0) + ->get(); + $onlineDishInfo = OnlineItems::select('real_price', 'sale_price', 'special_price') + ->where('menu_code', '=', $item['menu_code']) + ->where('dish_code', '=', $item['dish_code']) + ->get(); + $dishName = $dishInfo[0]->name; + $dishCount = OnlineItems::where('menu_code', '=', $item['menu_code'])->sum('count'); + $dishSum = $onlineDishInfo[0]->real_price * $dishCount; + if ($dishSum > 0) { + $dishTotalCost = round(($onlineDishInfo[0]->special_price * $dishCount), 2); + $dishPercent = round((100 - ((($dishSum - $dishTotalCost) * 100) / $dishSum)), 2); + $dishProfit = $dishSum - $dishTotalCost; + } else { + $dishTotalCost = 0; + $dishPercent = 0; + $dishProfit = 0; + } + $dishes[] = array('name' => $dishName, 'count' => $dishCount, 'sum' => $dishSum, 'totalCost' => $dishTotalCost, 'percentProffit' => $dishPercent, 'proffit' => $dishProfit); + } + for ($i = 0; $i < count($dishes); $i++) { + $sortkey[$i] = $dishes[$i]['count']; + } + arsort($sortkey); + foreach ($sortkey as $key => $key) { + $sorted[] = $dishes[$key]; + } + $sorted = array_slice($sorted, 0, 10); + return [ + 'status' => 'success', + 'dishes' => $sorted, + // 'info' => $info, + // 'test' => $dishes, + // 'count' => $dishCount, + ]; + } else { + return [ + 'status' => 'success', + 'dishes' => [], + // 'info' => $info, + // 'test' => $dishes, + // 'count' => $dishCount, + ]; + } + } +} \ No newline at end of file diff --git a/composer.json b/composer.json index 203cbdf..288b94b 100644 --- a/composer.json +++ b/composer.json @@ -1,6 +1,6 @@ { "name": "hrc-admin/hello-world", - "version": "1.0", + "version": "1.2", "require": { "horeca/admin-php-module-core": "dev-master" }, diff --git a/composer.lock b/composer.lock index 5594e94..bfcc9ad 100644 --- a/composer.lock +++ b/composer.lock @@ -62,6 +62,384 @@ ], "time": "2021-01-20T22:51:39+00:00" }, + { + "name": "composer/package-versions-deprecated", + "version": "1.11.99.1", + "source": { + "type": "git", + "url": "https://github.com/composer/package-versions-deprecated.git", + "reference": "7413f0b55a051e89485c5cb9f765fe24bb02a7b6" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/composer/package-versions-deprecated/zipball/7413f0b55a051e89485c5cb9f765fe24bb02a7b6", + "reference": "7413f0b55a051e89485c5cb9f765fe24bb02a7b6", + "shasum": "" + }, + "require": { + "composer-plugin-api": "^1.1.0 || ^2.0", + "php": "^7 || ^8" + }, + "replace": { + "ocramius/package-versions": "1.11.99" + }, + "require-dev": { + "composer/composer": "^1.9.3 || ^2.0@dev", + "ext-zip": "^1.13", + "phpunit/phpunit": "^6.5 || ^7" + }, + "type": "composer-plugin", + "extra": { + "class": "PackageVersions\\Installer", + "branch-alias": { + "dev-master": "1.x-dev" + } + }, + "autoload": { + "psr-4": { + "PackageVersions\\": "src/PackageVersions" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Marco Pivetta", + "email": "ocramius@gmail.com" + }, + { + "name": "Jordi Boggiano", + "email": "j.boggiano@seld.be" + } + ], + "description": "Composer plugin that provides efficient querying for installed package versions (no runtime IO)", + "support": { + "issues": "https://github.com/composer/package-versions-deprecated/issues", + "source": "https://github.com/composer/package-versions-deprecated/tree/1.11.99.1" + }, + "funding": [ + { + "url": "https://packagist.com", + "type": "custom" + }, + { + "url": "https://github.com/composer", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/composer/composer", + "type": "tidelift" + } + ], + "time": "2020-11-11T10:22:58+00:00" + }, + { + "name": "doctrine/cache", + "version": "1.10.2", + "source": { + "type": "git", + "url": "https://github.com/doctrine/cache.git", + "reference": "13e3381b25847283a91948d04640543941309727" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/cache/zipball/13e3381b25847283a91948d04640543941309727", + "reference": "13e3381b25847283a91948d04640543941309727", + "shasum": "" + }, + "require": { + "php": "~7.1 || ^8.0" + }, + "conflict": { + "doctrine/common": ">2.2,<2.4" + }, + "require-dev": { + "alcaeus/mongo-php-adapter": "^1.1", + "doctrine/coding-standard": "^6.0", + "mongodb/mongodb": "^1.1", + "phpunit/phpunit": "^7.0", + "predis/predis": "~1.0" + }, + "suggest": { + "alcaeus/mongo-php-adapter": "Required to use legacy MongoDB driver" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.9.x-dev" + } + }, + "autoload": { + "psr-4": { + "Doctrine\\Common\\Cache\\": "lib/Doctrine/Common/Cache" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + } + ], + "description": "PHP Doctrine Cache library is a popular cache implementation that supports many different drivers such as redis, memcache, apc, mongodb and others.", + "homepage": "https://www.doctrine-project.org/projects/cache.html", + "keywords": [ + "abstraction", + "apcu", + "cache", + "caching", + "couchdb", + "memcached", + "php", + "redis", + "xcache" + ], + "support": { + "issues": "https://github.com/doctrine/cache/issues", + "source": "https://github.com/doctrine/cache/tree/1.10.x" + }, + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Fcache", + "type": "tidelift" + } + ], + "time": "2020-07-07T18:54:01+00:00" + }, + { + "name": "doctrine/dbal", + "version": "3.0.0", + "source": { + "type": "git", + "url": "https://github.com/doctrine/dbal.git", + "reference": "ee6d1260d5cc20ec506455a585945d7bdb98662c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/dbal/zipball/ee6d1260d5cc20ec506455a585945d7bdb98662c", + "reference": "ee6d1260d5cc20ec506455a585945d7bdb98662c", + "shasum": "" + }, + "require": { + "composer/package-versions-deprecated": "^1.11.99", + "doctrine/cache": "^1.0", + "doctrine/event-manager": "^1.0", + "php": "^7.3 || ^8.0" + }, + "require-dev": { + "doctrine/coding-standard": "^8.1", + "jetbrains/phpstorm-stubs": "^2019.1", + "phpstan/phpstan": "^0.12.40", + "phpstan/phpstan-strict-rules": "^0.12.2", + "phpunit/phpunit": "^9.4", + "psalm/plugin-phpunit": "^0.10.0", + "symfony/console": "^2.0.5|^3.0|^4.0|^5.0", + "vimeo/psalm": "^3.17.2" + }, + "suggest": { + "symfony/console": "For helpful console commands such as SQL execution and import of files." + }, + "bin": [ + "bin/doctrine-dbal" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Doctrine\\DBAL\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + } + ], + "description": "Powerful PHP database abstraction layer (DBAL) with many features for database schema introspection and management.", + "homepage": "https://www.doctrine-project.org/projects/dbal.html", + "keywords": [ + "abstraction", + "database", + "db2", + "dbal", + "mariadb", + "mssql", + "mysql", + "oci8", + "oracle", + "pdo", + "pgsql", + "postgresql", + "queryobject", + "sasql", + "sql", + "sqlite", + "sqlserver", + "sqlsrv" + ], + "support": { + "issues": "https://github.com/doctrine/dbal/issues", + "source": "https://github.com/doctrine/dbal/tree/3.0.0" + }, + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Fdbal", + "type": "tidelift" + } + ], + "time": "2020-11-15T18:20:41+00:00" + }, + { + "name": "doctrine/event-manager", + "version": "1.1.1", + "source": { + "type": "git", + "url": "https://github.com/doctrine/event-manager.git", + "reference": "41370af6a30faa9dc0368c4a6814d596e81aba7f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/event-manager/zipball/41370af6a30faa9dc0368c4a6814d596e81aba7f", + "reference": "41370af6a30faa9dc0368c4a6814d596e81aba7f", + "shasum": "" + }, + "require": { + "php": "^7.1 || ^8.0" + }, + "conflict": { + "doctrine/common": "<2.9@dev" + }, + "require-dev": { + "doctrine/coding-standard": "^6.0", + "phpunit/phpunit": "^7.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Doctrine\\Common\\": "lib/Doctrine/Common" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + }, + { + "name": "Marco Pivetta", + "email": "ocramius@gmail.com" + } + ], + "description": "The Doctrine Event Manager is a simple PHP event system that was built to be used with the various Doctrine projects.", + "homepage": "https://www.doctrine-project.org/projects/event-manager.html", + "keywords": [ + "event", + "event dispatcher", + "event manager", + "event system", + "events" + ], + "support": { + "issues": "https://github.com/doctrine/event-manager/issues", + "source": "https://github.com/doctrine/event-manager/tree/1.1.x" + }, + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Fevent-manager", + "type": "tidelift" + } + ], + "time": "2020-05-29T18:28:51+00:00" + }, { "name": "doctrine/inflector", "version": "2.0.3", @@ -438,9 +816,10 @@ "source": { "type": "git", "url": "https://git.hrc.by/horeca/admin-php-module-core", - "reference": "0ce837d9314ee9d91e582cd4c7a7069a0676333a" + "reference": "7725db6eb69e06d8523e7a80d23a31e1b5b7efb2" }, "require": { + "doctrine/dbal": "^3.0", "ext-json": "*", "laravel/lumen-framework": "^8.0", "php": ">=7.0" @@ -484,20 +863,20 @@ "laravel", "lumen" ], - "time": "2021-01-27T13:59:16+00:00" + "time": "2021-02-26T10:41:51+00:00" }, { "name": "illuminate/auth", - "version": "v8.25.0", + "version": "v8.29.0", "source": { "type": "git", "url": "https://github.com/illuminate/auth.git", - "reference": "8afa97dda64d50515ab51015e15064291c789244" + "reference": "638a1b2111bbbeac9ce500037e77dc52c2453e8e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/illuminate/auth/zipball/8afa97dda64d50515ab51015e15064291c789244", - "reference": "8afa97dda64d50515ab51015e15064291c789244", + "url": "https://api.github.com/repos/illuminate/auth/zipball/638a1b2111bbbeac9ce500037e77dc52c2453e8e", + "reference": "638a1b2111bbbeac9ce500037e77dc52c2453e8e", "shasum": "" }, "require": { @@ -541,20 +920,20 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2020-12-15T13:44:33+00:00" + "time": "2021-02-22T17:00:32+00:00" }, { "name": "illuminate/broadcasting", - "version": "v8.25.0", + "version": "v8.29.0", "source": { "type": "git", "url": "https://github.com/illuminate/broadcasting.git", - "reference": "869824ad09ba8f0a8a6d97ee083950d9bf8c710d" + "reference": "69bb3db1443a18a634d1c8bf3a28a5705a3e2239" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/illuminate/broadcasting/zipball/869824ad09ba8f0a8a6d97ee083950d9bf8c710d", - "reference": "869824ad09ba8f0a8a6d97ee083950d9bf8c710d", + "url": "https://api.github.com/repos/illuminate/broadcasting/zipball/69bb3db1443a18a634d1c8bf3a28a5705a3e2239", + "reference": "69bb3db1443a18a634d1c8bf3a28a5705a3e2239", "shasum": "" }, "require": { @@ -597,20 +976,20 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2020-12-09T18:07:50+00:00" + "time": "2021-02-22T20:04:31+00:00" }, { "name": "illuminate/bus", - "version": "v8.25.0", + "version": "v8.29.0", "source": { "type": "git", "url": "https://github.com/illuminate/bus.git", - "reference": "b2c89db379a2d8b5c5eb1f81478b3c40f45d93ff" + "reference": "18b3d810cfe52a4fa040994e68da4f356a498e8a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/illuminate/bus/zipball/b2c89db379a2d8b5c5eb1f81478b3c40f45d93ff", - "reference": "b2c89db379a2d8b5c5eb1f81478b3c40f45d93ff", + "url": "https://api.github.com/repos/illuminate/bus/zipball/18b3d810cfe52a4fa040994e68da4f356a498e8a", + "reference": "18b3d810cfe52a4fa040994e68da4f356a498e8a", "shasum": "" }, "require": { @@ -650,11 +1029,11 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2020-12-29T15:18:15+00:00" + "time": "2021-01-30T19:50:02+00:00" }, { "name": "illuminate/cache", - "version": "v8.25.0", + "version": "v8.29.0", "source": { "type": "git", "url": "https://github.com/illuminate/cache.git", @@ -711,16 +1090,16 @@ }, { "name": "illuminate/collections", - "version": "v8.25.0", + "version": "v8.29.0", "source": { "type": "git", "url": "https://github.com/illuminate/collections.git", - "reference": "3c968b76c395c4ac94d378d4bdeea1af0e8ad44c" + "reference": "3313bb9066ad60d91a3407b3ef02c114e2ecf8eb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/illuminate/collections/zipball/3c968b76c395c4ac94d378d4bdeea1af0e8ad44c", - "reference": "3c968b76c395c4ac94d378d4bdeea1af0e8ad44c", + "url": "https://api.github.com/repos/illuminate/collections/zipball/3313bb9066ad60d91a3407b3ef02c114e2ecf8eb", + "reference": "3313bb9066ad60d91a3407b3ef02c114e2ecf8eb", "shasum": "" }, "require": { @@ -761,11 +1140,11 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2021-01-20T14:16:15+00:00" + "time": "2021-02-21T16:09:39+00:00" }, { "name": "illuminate/config", - "version": "v8.25.0", + "version": "v8.29.0", "source": { "type": "git", "url": "https://github.com/illuminate/config.git", @@ -813,16 +1192,16 @@ }, { "name": "illuminate/console", - "version": "v8.25.0", + "version": "v8.29.0", "source": { "type": "git", "url": "https://github.com/illuminate/console.git", - "reference": "065373305462c51b6852c028cf8a649edbab47ea" + "reference": "3b10009e10f4187d922c7a2a51cc36c117a3b3cb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/illuminate/console/zipball/065373305462c51b6852c028cf8a649edbab47ea", - "reference": "065373305462c51b6852c028cf8a649edbab47ea", + "url": "https://api.github.com/repos/illuminate/console/zipball/3b10009e10f4187d922c7a2a51cc36c117a3b3cb", + "reference": "3b10009e10f4187d922c7a2a51cc36c117a3b3cb", "shasum": "" }, "require": { @@ -869,20 +1248,20 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2020-12-11T19:59:27+00:00" + "time": "2021-02-02T13:42:30+00:00" }, { "name": "illuminate/container", - "version": "v8.25.0", + "version": "v8.29.0", "source": { "type": "git", "url": "https://github.com/illuminate/container.git", - "reference": "657cac2aa601aa0223afe0ed8627d0cb443f6a22" + "reference": "3d6ce613f455093fdf8bd3c81b30104aef0b11e0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/illuminate/container/zipball/657cac2aa601aa0223afe0ed8627d0cb443f6a22", - "reference": "657cac2aa601aa0223afe0ed8627d0cb443f6a22", + "url": "https://api.github.com/repos/illuminate/container/zipball/3d6ce613f455093fdf8bd3c81b30104aef0b11e0", + "reference": "3d6ce613f455093fdf8bd3c81b30104aef0b11e0", "shasum": "" }, "require": { @@ -920,11 +1299,11 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2020-12-01T14:31:29+00:00" + "time": "2021-02-12T21:15:27+00:00" }, { "name": "illuminate/contracts", - "version": "v8.25.0", + "version": "v8.29.0", "source": { "type": "git", "url": "https://github.com/illuminate/contracts.git", @@ -972,16 +1351,16 @@ }, { "name": "illuminate/database", - "version": "v8.25.0", + "version": "v8.29.0", "source": { "type": "git", "url": "https://github.com/illuminate/database.git", - "reference": "5b0ce5b876f73cfa9bf8066f29e1738547018095" + "reference": "f4d512a530a04f8da30b5222f54c56545ff336ed" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/illuminate/database/zipball/5b0ce5b876f73cfa9bf8066f29e1738547018095", - "reference": "5b0ce5b876f73cfa9bf8066f29e1738547018095", + "url": "https://api.github.com/repos/illuminate/database/zipball/f4d512a530a04f8da30b5222f54c56545ff336ed", + "reference": "f4d512a530a04f8da30b5222f54c56545ff336ed", "shasum": "" }, "require": { @@ -1036,11 +1415,11 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2021-01-25T16:19:43+00:00" + "time": "2021-02-18T16:17:19+00:00" }, { "name": "illuminate/encryption", - "version": "v8.25.0", + "version": "v8.29.0", "source": { "type": "git", "url": "https://github.com/illuminate/encryption.git", @@ -1091,16 +1470,16 @@ }, { "name": "illuminate/events", - "version": "v8.25.0", + "version": "v8.29.0", "source": { "type": "git", "url": "https://github.com/illuminate/events.git", - "reference": "eda1c857153949da15abc9df7608df2cb5d9bcdb" + "reference": "676787d8c54988465e7e7d95f15a7d1a23c2643b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/illuminate/events/zipball/eda1c857153949da15abc9df7608df2cb5d9bcdb", - "reference": "eda1c857153949da15abc9df7608df2cb5d9bcdb", + "url": "https://api.github.com/repos/illuminate/events/zipball/676787d8c54988465e7e7d95f15a7d1a23c2643b", + "reference": "676787d8c54988465e7e7d95f15a7d1a23c2643b", "shasum": "" }, "require": { @@ -1142,20 +1521,20 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2021-01-25T16:24:03+00:00" + "time": "2021-02-02T13:42:30+00:00" }, { "name": "illuminate/filesystem", - "version": "v8.25.0", + "version": "v8.29.0", "source": { "type": "git", "url": "https://github.com/illuminate/filesystem.git", - "reference": "2f468939ae97c861d683d35060e7ae0c11fdcb98" + "reference": "3195bbfe4c3d908b003f8fe9adc7cb42c024e4d9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/illuminate/filesystem/zipball/2f468939ae97c861d683d35060e7ae0c11fdcb98", - "reference": "2f468939ae97c861d683d35060e7ae0c11fdcb98", + "url": "https://api.github.com/repos/illuminate/filesystem/zipball/3195bbfe4c3d908b003f8fe9adc7cb42c024e4d9", + "reference": "3195bbfe4c3d908b003f8fe9adc7cb42c024e4d9", "shasum": "" }, "require": { @@ -1204,20 +1583,20 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2020-12-08T17:15:16+00:00" + "time": "2021-02-23T13:33:04+00:00" }, { "name": "illuminate/hashing", - "version": "v8.25.0", + "version": "v8.29.0", "source": { "type": "git", "url": "https://github.com/illuminate/hashing.git", - "reference": "d88378c7bb2b69d26d9e4aeb9f82067e75ffa15c" + "reference": "e0541364324c4cc165d4fd54afade571e1bb1626" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/illuminate/hashing/zipball/d88378c7bb2b69d26d9e4aeb9f82067e75ffa15c", - "reference": "d88378c7bb2b69d26d9e4aeb9f82067e75ffa15c", + "url": "https://api.github.com/repos/illuminate/hashing/zipball/e0541364324c4cc165d4fd54afade571e1bb1626", + "reference": "e0541364324c4cc165d4fd54afade571e1bb1626", "shasum": "" }, "require": { @@ -1252,20 +1631,20 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2020-10-27T15:20:30+00:00" + "time": "2021-01-30T19:50:02+00:00" }, { "name": "illuminate/http", - "version": "v8.25.0", + "version": "v8.29.0", "source": { "type": "git", "url": "https://github.com/illuminate/http.git", - "reference": "6ad0c5f88a1086d660ebe2c9b55fc1a3aca1122f" + "reference": "c021ccf7299532703c68069351411d423ffe759c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/illuminate/http/zipball/6ad0c5f88a1086d660ebe2c9b55fc1a3aca1122f", - "reference": "6ad0c5f88a1086d660ebe2c9b55fc1a3aca1122f", + "url": "https://api.github.com/repos/illuminate/http/zipball/c021ccf7299532703c68069351411d423ffe759c", + "reference": "c021ccf7299532703c68069351411d423ffe759c", "shasum": "" }, "require": { @@ -1310,11 +1689,11 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2021-01-20T16:47:27+00:00" + "time": "2021-02-21T16:08:38+00:00" }, { "name": "illuminate/log", - "version": "v8.25.0", + "version": "v8.29.0", "source": { "type": "git", "url": "https://github.com/illuminate/log.git", @@ -1363,7 +1742,7 @@ }, { "name": "illuminate/macroable", - "version": "v8.25.0", + "version": "v8.29.0", "source": { "type": "git", "url": "https://github.com/illuminate/macroable.git", @@ -1409,16 +1788,16 @@ }, { "name": "illuminate/pagination", - "version": "v8.25.0", + "version": "v8.29.0", "source": { "type": "git", "url": "https://github.com/illuminate/pagination.git", - "reference": "56772aa2c4bfd4e228eddf43cff0974b434178dc" + "reference": "473ab976c69138a10c4eea73a2cf0f969137973c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/illuminate/pagination/zipball/56772aa2c4bfd4e228eddf43cff0974b434178dc", - "reference": "56772aa2c4bfd4e228eddf43cff0974b434178dc", + "url": "https://api.github.com/repos/illuminate/pagination/zipball/473ab976c69138a10c4eea73a2cf0f969137973c", + "reference": "473ab976c69138a10c4eea73a2cf0f969137973c", "shasum": "" }, "require": { @@ -1455,11 +1834,11 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2020-11-26T14:30:03+00:00" + "time": "2021-02-17T13:51:11+00:00" }, { "name": "illuminate/pipeline", - "version": "v8.25.0", + "version": "v8.29.0", "source": { "type": "git", "url": "https://github.com/illuminate/pipeline.git", @@ -1507,16 +1886,16 @@ }, { "name": "illuminate/queue", - "version": "v8.25.0", + "version": "v8.29.0", "source": { "type": "git", "url": "https://github.com/illuminate/queue.git", - "reference": "2c91bc9f5b0a9b306233b2e81b4cbc976703e017" + "reference": "70aeb38435eec3dcfd0a6d84061caed15b4f38cd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/illuminate/queue/zipball/2c91bc9f5b0a9b306233b2e81b4cbc976703e017", - "reference": "2c91bc9f5b0a9b306233b2e81b4cbc976703e017", + "url": "https://api.github.com/repos/illuminate/queue/zipball/70aeb38435eec3dcfd0a6d84061caed15b4f38cd", + "reference": "70aeb38435eec3dcfd0a6d84061caed15b4f38cd", "shasum": "" }, "require": { @@ -1568,11 +1947,11 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2021-01-25T16:24:03+00:00" + "time": "2021-02-22T17:10:38+00:00" }, { "name": "illuminate/session", - "version": "v8.25.0", + "version": "v8.29.0", "source": { "type": "git", "url": "https://github.com/illuminate/session.git", @@ -1628,16 +2007,16 @@ }, { "name": "illuminate/support", - "version": "v8.25.0", + "version": "v8.29.0", "source": { "type": "git", "url": "https://github.com/illuminate/support.git", - "reference": "930ae59aea86acd6abba2ab9c84bcfe41b1b7eec" + "reference": "b745df9ef3120d173368fdf56eecc1fc40a9f90c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/illuminate/support/zipball/930ae59aea86acd6abba2ab9c84bcfe41b1b7eec", - "reference": "930ae59aea86acd6abba2ab9c84bcfe41b1b7eec", + "url": "https://api.github.com/repos/illuminate/support/zipball/b745df9ef3120d173368fdf56eecc1fc40a9f90c", + "reference": "b745df9ef3120d173368fdf56eecc1fc40a9f90c", "shasum": "" }, "require": { @@ -1656,6 +2035,7 @@ }, "suggest": { "illuminate/filesystem": "Required to use the composer class (^8.0).", + "league/commonmark": "Required to use Str::markdown() and Stringable::markdown() (^1.3).", "ramsey/uuid": "Required to use Str::uuid() (^4.0).", "symfony/process": "Required to use the composer class (^5.1.4).", "symfony/var-dumper": "Required to use the dd function (^5.1.4).", @@ -1691,20 +2071,20 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2021-01-25T20:54:50+00:00" + "time": "2021-02-21T15:57:40+00:00" }, { "name": "illuminate/testing", - "version": "v8.25.0", + "version": "v8.29.0", "source": { "type": "git", "url": "https://github.com/illuminate/testing.git", - "reference": "fc228f555ebba37498353e172718175d7ac6831e" + "reference": "5aedbd329e2c74e37b52f1267027e9b87e7127eb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/illuminate/testing/zipball/fc228f555ebba37498353e172718175d7ac6831e", - "reference": "fc228f555ebba37498353e172718175d7ac6831e", + "url": "https://api.github.com/repos/illuminate/testing/zipball/5aedbd329e2c74e37b52f1267027e9b87e7127eb", + "reference": "5aedbd329e2c74e37b52f1267027e9b87e7127eb", "shasum": "" }, "require": { @@ -1749,11 +2129,11 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2021-01-25T16:19:43+00:00" + "time": "2021-02-18T15:11:09+00:00" }, { "name": "illuminate/translation", - "version": "v8.25.0", + "version": "v8.29.0", "source": { "type": "git", "url": "https://github.com/illuminate/translation.git", @@ -1805,16 +2185,16 @@ }, { "name": "illuminate/validation", - "version": "v8.25.0", + "version": "v8.29.0", "source": { "type": "git", "url": "https://github.com/illuminate/validation.git", - "reference": "f303e82e8ffb06f64c68ba69e7efba71471367be" + "reference": "44d46fa5a6ca47bb6bc1fee4feed84751b2d9cd2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/illuminate/validation/zipball/f303e82e8ffb06f64c68ba69e7efba71471367be", - "reference": "f303e82e8ffb06f64c68ba69e7efba71471367be", + "url": "https://api.github.com/repos/illuminate/validation/zipball/44d46fa5a6ca47bb6bc1fee4feed84751b2d9cd2", + "reference": "44d46fa5a6ca47bb6bc1fee4feed84751b2d9cd2", "shasum": "" }, "require": { @@ -1860,11 +2240,11 @@ "issues": "https://github.com/laravel/framework/issues", "source": "https://github.com/laravel/framework" }, - "time": "2021-01-18T15:27:44+00:00" + "time": "2021-02-02T13:42:30+00:00" }, { "name": "illuminate/view", - "version": "v8.25.0", + "version": "v8.29.0", "source": { "type": "git", "url": "https://github.com/illuminate/view.git", @@ -1918,16 +2298,16 @@ }, { "name": "laravel/lumen-framework", - "version": "v8.2.2", + "version": "v8.2.3", "source": { "type": "git", "url": "https://github.com/laravel/lumen-framework.git", - "reference": "0603a83a3b6385a12acc3c6aa50858e4907fb6e4" + "reference": "6ed02d4d1a6e203b9e896bd105b2e838866f2951" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/lumen-framework/zipball/0603a83a3b6385a12acc3c6aa50858e4907fb6e4", - "reference": "0603a83a3b6385a12acc3c6aa50858e4907fb6e4", + "url": "https://api.github.com/repos/laravel/lumen-framework/zipball/6ed02d4d1a6e203b9e896bd105b2e838866f2951", + "reference": "6ed02d4d1a6e203b9e896bd105b2e838866f2951", "shasum": "" }, "require": { @@ -2011,7 +2391,7 @@ "issues": "https://github.com/laravel/lumen-framework/issues", "source": "https://github.com/laravel/lumen-framework" }, - "time": "2021-01-26T19:30:32+00:00" + "time": "2021-02-09T16:42:36+00:00" }, { "name": "monolog/monolog", @@ -2111,16 +2491,16 @@ }, { "name": "nesbot/carbon", - "version": "2.43.0", + "version": "2.45.1", "source": { "type": "git", "url": "https://github.com/briannesbitt/Carbon.git", - "reference": "d32c57d8389113742f4a88725a170236470012e2" + "reference": "528783b188bdb853eb21239b1722831e0f000a8d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/d32c57d8389113742f4a88725a170236470012e2", - "reference": "d32c57d8389113742f4a88725a170236470012e2", + "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/528783b188bdb853eb21239b1722831e0f000a8d", + "reference": "528783b188bdb853eb21239b1722831e0f000a8d", "shasum": "" }, "require": { @@ -2136,7 +2516,7 @@ "phpmd/phpmd": "^2.9", "phpstan/extension-installer": "^1.0", "phpstan/phpstan": "^0.12.54", - "phpunit/phpunit": "^7.5 || ^8.0", + "phpunit/phpunit": "^7.5.20 || ^8.5.14", "squizlabs/php_codesniffer": "^3.4" }, "bin": [ @@ -2200,7 +2580,7 @@ "type": "tidelift" } ], - "time": "2020-12-17T20:55:32+00:00" + "time": "2021-02-11T18:30:17+00:00" }, { "name": "nikic/fast-route", @@ -2761,16 +3141,16 @@ }, { "name": "symfony/console", - "version": "v5.2.2", + "version": "v5.2.3", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "d62ec79478b55036f65e2602e282822b8eaaff0a" + "reference": "89d4b176d12a2946a1ae4e34906a025b7b6b135a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/d62ec79478b55036f65e2602e282822b8eaaff0a", - "reference": "d62ec79478b55036f65e2602e282822b8eaaff0a", + "url": "https://api.github.com/repos/symfony/console/zipball/89d4b176d12a2946a1ae4e34906a025b7b6b135a", + "reference": "89d4b176d12a2946a1ae4e34906a025b7b6b135a", "shasum": "" }, "require": { @@ -2838,7 +3218,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v5.2.2" + "source": "https://github.com/symfony/console/tree/v5.2.3" }, "funding": [ { @@ -2854,7 +3234,7 @@ "type": "tidelift" } ], - "time": "2021-01-27T10:15:41+00:00" + "time": "2021-01-28T22:06:19+00:00" }, { "name": "symfony/deprecation-contracts", @@ -2925,16 +3305,16 @@ }, { "name": "symfony/error-handler", - "version": "v5.2.2", + "version": "v5.2.3", "source": { "type": "git", "url": "https://github.com/symfony/error-handler.git", - "reference": "4fd4a377f7b7ec7c3f3b40346a1411e0a83f9d40" + "reference": "48f18b3609e120ea66d59142c23dc53e9562c26d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/error-handler/zipball/4fd4a377f7b7ec7c3f3b40346a1411e0a83f9d40", - "reference": "4fd4a377f7b7ec7c3f3b40346a1411e0a83f9d40", + "url": "https://api.github.com/repos/symfony/error-handler/zipball/48f18b3609e120ea66d59142c23dc53e9562c26d", + "reference": "48f18b3609e120ea66d59142c23dc53e9562c26d", "shasum": "" }, "require": { @@ -2974,7 +3354,7 @@ "description": "Provides tools to manage errors and ease debugging PHP code", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/error-handler/tree/v5.2.2" + "source": "https://github.com/symfony/error-handler/tree/v5.2.3" }, "funding": [ { @@ -2990,11 +3370,11 @@ "type": "tidelift" } ], - "time": "2021-01-27T10:15:41+00:00" + "time": "2021-01-28T22:06:19+00:00" }, { "name": "symfony/event-dispatcher", - "version": "v5.2.2", + "version": "v5.2.3", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher.git", @@ -3059,7 +3439,7 @@ "description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/event-dispatcher/tree/v5.2.2" + "source": "https://github.com/symfony/event-dispatcher/tree/v5.2.3" }, "funding": [ { @@ -3158,16 +3538,16 @@ }, { "name": "symfony/finder", - "version": "v5.2.2", + "version": "v5.2.3", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "196f45723b5e618bf0e23b97e96d11652696ea9e" + "reference": "4adc8d172d602008c204c2e16956f99257248e03" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/196f45723b5e618bf0e23b97e96d11652696ea9e", - "reference": "196f45723b5e618bf0e23b97e96d11652696ea9e", + "url": "https://api.github.com/repos/symfony/finder/zipball/4adc8d172d602008c204c2e16956f99257248e03", + "reference": "4adc8d172d602008c204c2e16956f99257248e03", "shasum": "" }, "require": { @@ -3199,7 +3579,7 @@ "description": "Finds files and directories via an intuitive fluent interface", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/finder/tree/v5.2.2" + "source": "https://github.com/symfony/finder/tree/v5.2.3" }, "funding": [ { @@ -3215,7 +3595,7 @@ "type": "tidelift" } ], - "time": "2021-01-27T10:01:46+00:00" + "time": "2021-01-28T22:06:19+00:00" }, { "name": "symfony/http-client-contracts", @@ -3298,16 +3678,16 @@ }, { "name": "symfony/http-foundation", - "version": "v5.2.2", + "version": "v5.2.3", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "16dfa5acf8103f0394d447f8eea3ea49f9e50855" + "reference": "20c554c0f03f7cde5ce230ed248470cccbc34c36" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/16dfa5acf8103f0394d447f8eea3ea49f9e50855", - "reference": "16dfa5acf8103f0394d447f8eea3ea49f9e50855", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/20c554c0f03f7cde5ce230ed248470cccbc34c36", + "reference": "20c554c0f03f7cde5ce230ed248470cccbc34c36", "shasum": "" }, "require": { @@ -3351,7 +3731,7 @@ "description": "Defines an object-oriented layer for the HTTP specification", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-foundation/tree/v5.2.2" + "source": "https://github.com/symfony/http-foundation/tree/v5.2.3" }, "funding": [ { @@ -3367,20 +3747,20 @@ "type": "tidelift" } ], - "time": "2021-01-27T11:19:04+00:00" + "time": "2021-02-03T04:42:09+00:00" }, { "name": "symfony/http-kernel", - "version": "v5.2.2", + "version": "v5.2.3", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "831b51e9370ece0febd0950dd819c63f996721c7" + "reference": "89bac04f29e7b0b52f9fa6a4288ca7a8f90a1a05" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/831b51e9370ece0febd0950dd819c63f996721c7", - "reference": "831b51e9370ece0febd0950dd819c63f996721c7", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/89bac04f29e7b0b52f9fa6a4288ca7a8f90a1a05", + "reference": "89bac04f29e7b0b52f9fa6a4288ca7a8f90a1a05", "shasum": "" }, "require": { @@ -3463,7 +3843,7 @@ "description": "Provides a structured process for converting a Request into a Response", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/http-kernel/tree/v5.2.2" + "source": "https://github.com/symfony/http-kernel/tree/v5.2.3" }, "funding": [ { @@ -3479,20 +3859,20 @@ "type": "tidelift" } ], - "time": "2021-01-27T14:45:46+00:00" + "time": "2021-02-03T04:51:58+00:00" }, { "name": "symfony/mime", - "version": "v5.2.2", + "version": "v5.2.3", "source": { "type": "git", "url": "https://github.com/symfony/mime.git", - "reference": "37bade585ea100d235c031b258eff93b5b6bb9a9" + "reference": "7dee6a43493f39b51ff6c5bb2bd576fe40a76c86" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/mime/zipball/37bade585ea100d235c031b258eff93b5b6bb9a9", - "reference": "37bade585ea100d235c031b258eff93b5b6bb9a9", + "url": "https://api.github.com/repos/symfony/mime/zipball/7dee6a43493f39b51ff6c5bb2bd576fe40a76c86", + "reference": "7dee6a43493f39b51ff6c5bb2bd576fe40a76c86", "shasum": "" }, "require": { @@ -3545,7 +3925,7 @@ "mime-type" ], "support": { - "source": "https://github.com/symfony/mime/tree/v5.2.2" + "source": "https://github.com/symfony/mime/tree/v5.2.3" }, "funding": [ { @@ -3561,11 +3941,11 @@ "type": "tidelift" } ], - "time": "2021-01-25T14:08:25+00:00" + "time": "2021-02-02T06:10:15+00:00" }, { "name": "symfony/polyfill-ctype", - "version": "v1.22.0", + "version": "v1.22.1", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-ctype.git", @@ -3624,7 +4004,7 @@ "portable" ], "support": { - "source": "https://github.com/symfony/polyfill-ctype/tree/v1.22.0" + "source": "https://github.com/symfony/polyfill-ctype/tree/v1.22.1" }, "funding": [ { @@ -3644,16 +4024,16 @@ }, { "name": "symfony/polyfill-intl-grapheme", - "version": "v1.22.0", + "version": "v1.22.1", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-grapheme.git", - "reference": "267a9adeb8ecb8071040a740930e077cdfb987af" + "reference": "5601e09b69f26c1828b13b6bb87cb07cddba3170" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/267a9adeb8ecb8071040a740930e077cdfb987af", - "reference": "267a9adeb8ecb8071040a740930e077cdfb987af", + "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/5601e09b69f26c1828b13b6bb87cb07cddba3170", + "reference": "5601e09b69f26c1828b13b6bb87cb07cddba3170", "shasum": "" }, "require": { @@ -3705,7 +4085,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.22.0" + "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.22.1" }, "funding": [ { @@ -3721,20 +4101,20 @@ "type": "tidelift" } ], - "time": "2021-01-07T16:49:33+00:00" + "time": "2021-01-22T09:19:47+00:00" }, { "name": "symfony/polyfill-intl-idn", - "version": "v1.22.0", + "version": "v1.22.1", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-idn.git", - "reference": "0eb8293dbbcd6ef6bf81404c9ce7d95bcdf34f44" + "reference": "2d63434d922daf7da8dd863e7907e67ee3031483" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/0eb8293dbbcd6ef6bf81404c9ce7d95bcdf34f44", - "reference": "0eb8293dbbcd6ef6bf81404c9ce7d95bcdf34f44", + "url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/2d63434d922daf7da8dd863e7907e67ee3031483", + "reference": "2d63434d922daf7da8dd863e7907e67ee3031483", "shasum": "" }, "require": { @@ -3792,7 +4172,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-idn/tree/v1.22.0" + "source": "https://github.com/symfony/polyfill-intl-idn/tree/v1.22.1" }, "funding": [ { @@ -3808,20 +4188,20 @@ "type": "tidelift" } ], - "time": "2021-01-07T16:49:33+00:00" + "time": "2021-01-22T09:19:47+00:00" }, { "name": "symfony/polyfill-intl-normalizer", - "version": "v1.22.0", + "version": "v1.22.1", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-normalizer.git", - "reference": "6e971c891537eb617a00bb07a43d182a6915faba" + "reference": "43a0283138253ed1d48d352ab6d0bdb3f809f248" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/6e971c891537eb617a00bb07a43d182a6915faba", - "reference": "6e971c891537eb617a00bb07a43d182a6915faba", + "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/43a0283138253ed1d48d352ab6d0bdb3f809f248", + "reference": "43a0283138253ed1d48d352ab6d0bdb3f809f248", "shasum": "" }, "require": { @@ -3876,7 +4256,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.22.0" + "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.22.1" }, "funding": [ { @@ -3892,20 +4272,20 @@ "type": "tidelift" } ], - "time": "2021-01-07T17:09:11+00:00" + "time": "2021-01-22T09:19:47+00:00" }, { "name": "symfony/polyfill-mbstring", - "version": "v1.22.0", + "version": "v1.22.1", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "f377a3dd1fde44d37b9831d68dc8dea3ffd28e13" + "reference": "5232de97ee3b75b0360528dae24e73db49566ab1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/f377a3dd1fde44d37b9831d68dc8dea3ffd28e13", - "reference": "f377a3dd1fde44d37b9831d68dc8dea3ffd28e13", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/5232de97ee3b75b0360528dae24e73db49566ab1", + "reference": "5232de97ee3b75b0360528dae24e73db49566ab1", "shasum": "" }, "require": { @@ -3956,7 +4336,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.22.0" + "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.22.1" }, "funding": [ { @@ -3972,11 +4352,11 @@ "type": "tidelift" } ], - "time": "2021-01-07T16:49:33+00:00" + "time": "2021-01-22T09:19:47+00:00" }, { "name": "symfony/polyfill-php72", - "version": "v1.22.0", + "version": "v1.22.1", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php72.git", @@ -4032,7 +4412,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php72/tree/v1.22.0" + "source": "https://github.com/symfony/polyfill-php72/tree/v1.22.1" }, "funding": [ { @@ -4052,7 +4432,7 @@ }, { "name": "symfony/polyfill-php73", - "version": "v1.22.0", + "version": "v1.22.1", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php73.git", @@ -4111,7 +4491,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php73/tree/v1.22.0" + "source": "https://github.com/symfony/polyfill-php73/tree/v1.22.1" }, "funding": [ { @@ -4131,7 +4511,7 @@ }, { "name": "symfony/polyfill-php80", - "version": "v1.22.0", + "version": "v1.22.1", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php80.git", @@ -4194,7 +4574,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php80/tree/v1.22.0" + "source": "https://github.com/symfony/polyfill-php80/tree/v1.22.1" }, "funding": [ { @@ -4214,7 +4594,7 @@ }, { "name": "symfony/process", - "version": "v5.2.2", + "version": "v5.2.3", "source": { "type": "git", "url": "https://github.com/symfony/process.git", @@ -4256,7 +4636,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v5.2.2" + "source": "https://github.com/symfony/process/tree/v5.2.3" }, "funding": [ { @@ -4355,7 +4735,7 @@ }, { "name": "symfony/string", - "version": "v5.2.2", + "version": "v5.2.3", "source": { "type": "git", "url": "https://github.com/symfony/string.git", @@ -4418,7 +4798,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v5.2.2" + "source": "https://github.com/symfony/string/tree/v5.2.3" }, "funding": [ { @@ -4438,7 +4818,7 @@ }, { "name": "symfony/translation", - "version": "v5.2.2", + "version": "v5.2.3", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", @@ -4511,7 +4891,7 @@ "description": "Provides tools to internationalize your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/translation/tree/v5.2.2" + "source": "https://github.com/symfony/translation/tree/v5.2.3" }, "funding": [ { @@ -4609,7 +4989,7 @@ }, { "name": "symfony/var-dumper", - "version": "v5.2.2", + "version": "v5.2.3", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", @@ -4677,7 +5057,7 @@ "dump" ], "support": { - "source": "https://github.com/symfony/var-dumper/tree/v5.2.2" + "source": "https://github.com/symfony/var-dumper/tree/v5.2.3" }, "funding": [ { diff --git a/database/migrations/2020_01_01_000000_create_test_table.php b/database/migrations/2020_01_01_000000_create_test_table.php deleted file mode 100644 index d0c22b7..0000000 --- a/database/migrations/2020_01_01_000000_create_test_table.php +++ /dev/null @@ -1,34 +0,0 @@ -increments('id'); - $table->timestamps(); - }); - } - - - /** - * Reverse the migrations. - * - * @return void - */ - public function down() - { - Schema::drop('test'); - } - -} diff --git a/database/migrations/2021_02_25_141003_add_revenue_to_exchange_shifts_table.php b/database/migrations/2021_02_25_141003_add_revenue_to_exchange_shifts_table.php new file mode 100644 index 0000000..7dee10b --- /dev/null +++ b/database/migrations/2021_02_25_141003_add_revenue_to_exchange_shifts_table.php @@ -0,0 +1,30 @@ +decimal('revenue', $precision = 16, $scale = 2)->nullable()->after('closed'); + }); + } + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::table('exchange_shifts', function (Blueprint $table) { + $table->dropColumn('revenue'); + }); + } +} diff --git a/database/migrations/2021_02_25_144800_add_value_to_exchange_actions_table.php b/database/migrations/2021_02_25_144800_add_value_to_exchange_actions_table.php new file mode 100644 index 0000000..8fa417b --- /dev/null +++ b/database/migrations/2021_02_25_144800_add_value_to_exchange_actions_table.php @@ -0,0 +1,27 @@ +string('value', 255)->nullable()->change(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::table('exchange_actions', function (Blueprint $table) { + }); + } +} diff --git a/database/migrations/2021_02_25_145053_add_foreign_key_to_clients_table.php b/database/migrations/2021_02_25_145053_add_foreign_key_to_clients_table.php new file mode 100644 index 0000000..d0f4bf0 --- /dev/null +++ b/database/migrations/2021_02_25_145053_add_foreign_key_to_clients_table.php @@ -0,0 +1,32 @@ +string('user_code')->unique()->change(); + + }); + Schema::table('clients_phone', function (Blueprint $table) { + $table->foreign('client_guid')->references('user_code')->on('clients'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::table('clients', function (Blueprint $table) { + }); + } +} diff --git a/database/migrations/2021_02_25_145053_add_order_to_orderbot_storage_table.php b/database/migrations/2021_02_25_145053_add_order_to_orderbot_storage_table.php new file mode 100644 index 0000000..655cf88 --- /dev/null +++ b/database/migrations/2021_02_25_145053_add_order_to_orderbot_storage_table.php @@ -0,0 +1,27 @@ +text('order')->change(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::table('orderbot_storage', function (Blueprint $table) { + }); + } +} diff --git a/database/migrations/2021_04_20_145715_create_clients_barcodes_table.php b/database/migrations/2021_04_20_145715_create_clients_barcodes_table.php new file mode 100644 index 0000000..f3fea6b --- /dev/null +++ b/database/migrations/2021_04_20_145715_create_clients_barcodes_table.php @@ -0,0 +1,34 @@ +id(); + $table->string('client_guid'); + $table->string('code_id'); + $table->string('name'); + $table->string('block'); + $table->string('value'); + $table->string('symptom_block'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::dropIfExists('clients_barcodes'); + } +} diff --git a/database/seeders/AddAfterMenuUploadSubscriber.php b/database/seeders/AddAfterMenuUploadSubscriber.php deleted file mode 100644 index 8c69461..0000000 --- a/database/seeders/AddAfterMenuUploadSubscriber.php +++ /dev/null @@ -1,19 +0,0 @@ -count() == 0) { + $group = new ClientsGroup([ + 'code' => '0', + 'name' => 'Без группы', + ]); + $group->save(); + } + } +} diff --git a/database/seeders/AddTestRight.php b/database/seeders/AddTestRight.php deleted file mode 100644 index ec0a409..0000000 --- a/database/seeders/AddTestRight.php +++ /dev/null @@ -1,19 +0,0 @@ -hasOne('App\Component\Models\ClientsPhone', 'client_guid', 'user_code'); + } +} \ No newline at end of file diff --git a/models/ClientsAddress.php b/models/ClientsAddress.php new file mode 100644 index 0000000..eb433d4 --- /dev/null +++ b/models/ClientsAddress.php @@ -0,0 +1,9 @@ +hasOne('App\Component\Models\Clients', 'user_code', 'client_guid'); + } +} \ No newline at end of file diff --git a/models/Dishes.php b/models/Dishes.php new file mode 100644 index 0000000..43294fb --- /dev/null +++ b/models/Dishes.php @@ -0,0 +1,9 @@ +count() == 0) { + $right = new Right([ + 'code' => $code, + 'name' => $name, + ]); + $right->save(); + } + } +} diff --git a/models/Settings.php b/models/Settings.php new file mode 100644 index 0000000..50079e2 --- /dev/null +++ b/models/Settings.php @@ -0,0 +1,9 @@ + + + \ No newline at end of file diff --git a/web/views/reimport.html b/web/views/reimport.html new file mode 100644 index 0000000..6e939cf --- /dev/null +++ b/web/views/reimport.html @@ -0,0 +1,80 @@ +
+
+
+
+
+
+ +
+
+
+ +
+
+
+ +
+ + + + +
+
+
+ +
+
+ +
+ + + + +
+
+
+
+ +
+
+ +
+
+
+
+
+ + + + \ No newline at end of file diff --git a/web/views/test_hello.html b/web/views/test_hello.html deleted file mode 100644 index cb5d556..0000000 --- a/web/views/test_hello.html +++ /dev/null @@ -1,35 +0,0 @@ -
-
- -
- -
-

- -

-

- -

-
-
- -
-
-
- - - - - - - - - - - - -
#Имя
{{ user.id }}{{ user.name }}
-
-
-
\ No newline at end of file