mirror of
https://gitlab.com/CIEFWorldwideSdnBhd/exchange-2.0.git
synced 2026-08-25 07:23:59 +00:00
777 lines
47 KiB
PHP
777 lines
47 KiB
PHP
<?php
|
||
|
||
|
||
namespace Database\Seeders;
|
||
|
||
use Illuminate\Database\Seeder;
|
||
use App\Models\QAQuestionnaireSet;
|
||
use App\Models\QAQuestions;
|
||
use App\Models\QAAnswerOptions;
|
||
use App\Classes\ValueObjects\Constants\QAType;
|
||
|
||
class QAWorkFlowSeeder extends Seeder
|
||
{
|
||
/**
|
||
* Run the database seeds.
|
||
*
|
||
* @return void
|
||
*/
|
||
public function run()
|
||
{
|
||
$questionnaireSets = [
|
||
[
|
||
'name' => 'Admin Work Flow',
|
||
'description' => 'Admin Work Flow',
|
||
'group' => '1688,approve_po,fill_po',
|
||
'version' => 1,
|
||
'questions' => [
|
||
[
|
||
'question_number' => 'node_0',
|
||
'question_title' => 'Are you ready to work today?',
|
||
'question_type' => QAType::MULTIPLE_CHOICES,
|
||
'is_start' => true,
|
||
'is_end' => false,
|
||
'answer_options' => [
|
||
['display_text' => 'Yes', 'value' => 'start_work', 'next_question_number' => 'start_work'],
|
||
['display_text' => 'No', 'value' => 'no_work', 'next_question_number' => 'no_work'],
|
||
],
|
||
'group' => '',
|
||
],
|
||
[
|
||
'question_number' => 'start_work',
|
||
'question_title' => 'What will you work on?',
|
||
'question_type' => QAType::MULTIPLE_CHOICES,
|
||
'is_start' => false,
|
||
'is_end' => false,
|
||
'answer_options' => [
|
||
['display_text' => '1688', 'value' => '1688', 'next_question_number' => '1688'],
|
||
['display_text' => 'Approve PO', 'value' => 'approve_po', 'next_question_number' => 'approve_po'],
|
||
['display_text' => 'Fill PO', 'value' => 'fill_po', 'next_question_number' => 'fill_po'],
|
||
],
|
||
'group' => '',
|
||
],
|
||
[
|
||
'question_number' => 'no_work',
|
||
'question_title' => 'Come back when you are ready to work',
|
||
'question_type' => QAType::DEFAULT,
|
||
'is_start' => false,
|
||
'is_end' => true,
|
||
'group' => '',
|
||
],
|
||
[
|
||
'question_number' => '1688',
|
||
'question_title' => '1688',
|
||
'question_type' => QAType::MULTIPLE_CHOICES,
|
||
'url' => 'api.admin_work_flow.fetch_oldest_order', //'http://localhost:8082/api/v1/admin-work-flow/fetch-oldest-order', //this.route("api.admin_work_flow.fetch_oldest_order"),
|
||
'is_start' => true,
|
||
'is_end' => false,
|
||
'answer_options' => [
|
||
['display_text' => 'Login Issue', 'value' => '1688_login_issue', 'btn_color' => 'warning', 'next_question_number' => '1688_login_issue'],
|
||
['display_text' => 'Login Successful', 'value' => '1688_login_successful', 'next_question_number' => '1688_login_successful'],
|
||
],
|
||
'group' => '1688',
|
||
],
|
||
[
|
||
'question_number' => '1688_login_issue',
|
||
'question_title' => '1688_login_issue',
|
||
'question_type' => QAType::MULTIPLE_CHOICES,
|
||
'is_start' => false,
|
||
'is_end' => false,
|
||
'answer_options' => [
|
||
['display_text' => 'Need TAC', 'value' => '1688_login_issue_need_tac', 'next_question_number' => '1688_issue_submit'],
|
||
['display_text' => 'Wrong login details', 'value' => '1688_login_issue_wrong_login_details', 'next_question_number' => '1688_issue_submit'],
|
||
['display_text' => 'Others', 'value' => '1688_login_issue_others', 'next_question_number' => '1688_login_issue_others'],
|
||
['display_text' => 'Order Cancelled', 'value' => '1688_login_issue_refund_request', 'next_question_number' => '1688_login_issue_refund_request'],
|
||
],
|
||
'group' => '1688',
|
||
'is_admin_filter' => true
|
||
],
|
||
[
|
||
'question_number' => '1688_login_successful',
|
||
'question_title' => '1688_login_successful',
|
||
'question_type' => QAType::MULTIPLE_CHOICES,
|
||
//'url' => 'api.admin_work_flow.fetch_model_attributes', //'http://localhost:8082/api/v1/admin-work-flow/{booking_id}/fetch-model-attributes',
|
||
'is_start' => false,
|
||
'is_end' => false,
|
||
'answer_options' => [
|
||
['display_text' => "Can't verify order?", 'value' => '1688_login_successful_cannot_verify', 'next_question_number' => '1688_login_successful_cannot_verify'],
|
||
['display_text' => 'Order Verified', 'value' => '1688_order_verify', 'next_question_number' => '1688_order_verify'],
|
||
],
|
||
'group' => '1688',
|
||
],
|
||
[
|
||
'question_number' => '1688_login_successful_cannot_verify',
|
||
'question_title' => '1688_login_successful_cannot_verify',
|
||
'question_type' => QAType::MULTIPLE_CHOICES,
|
||
'is_start' => false,
|
||
'is_end' => false,
|
||
'answer_options' => [
|
||
['display_text' => 'Amount not found', 'value' => '1688_login_successful_cannot_verify_amount_not_found', 'next_question_number' => '1688_issue_submit'],
|
||
['display_text' => 'Plus Member', 'value' => '1688_login_successful_cannot_verify_plus_member', 'next_question_number' => '1688_issue_submit'],
|
||
['display_text' => 'Others', 'value' => '1688_login_successful_cannot_verify_others', 'next_question_number' => '1688_login_successful_cannot_verify_others'],
|
||
['display_text' => 'Customer did not verify 1688 account', 'value' => '1688_login_successful_cannot_verify_customer_did_not_verify_account', 'next_question_number' => '1688_issue_submit'],
|
||
['display_text' => 'WorldFirst account linked another account', 'value' => '1688_login_successful_cannot_verify_worldfirst_account_linked_another_account', 'next_question_number' => '1688_issue_submit'],
|
||
],
|
||
'group' => '1688',
|
||
'is_admin_filter' => true
|
||
],
|
||
[
|
||
'question_number' => '1688_login_successful_cannot_verify_others',
|
||
'question_title' => 'What other issues did you encounter? Upload documents if needed',
|
||
'question_type' => QAType::REMARKS_WITH_DOCUMENT_UPLOAD,
|
||
'next_nested_question' => '1688_issue_submit',
|
||
'is_start' => false,
|
||
'is_end' => false,
|
||
'group' => '1688',
|
||
'is_admin_filter' => true
|
||
],
|
||
[
|
||
'question_number' => '1688_order_verify',
|
||
'question_title' => 'Order Amount (CNY)',
|
||
'question_description' => 'Please confirm whether the order amount on 1688 matches the total order amount',
|
||
'question_' => 'Order Amount',
|
||
'question_type' => QAType::FLOAT_MONEY,
|
||
'next_nested_question' => '1688_order_verification',
|
||
//'url' => 'api.admin_work_flow.fetch_model_attributes',
|
||
'is_start' => false,
|
||
'is_end' => false,
|
||
// 'answer_options' => [
|
||
// ['display_text' => 'Yes', 'value' => '1688_order_verification', 'next_question_number' => '1688_order_verification'],
|
||
// ],
|
||
'group' => '1688',
|
||
],
|
||
[
|
||
'question_number' => '1688_order_verification',
|
||
'question_title' => 'Are You Sure this is the correct amount?',
|
||
'question_type' => QAType::MULTIPLE_CHOICES,
|
||
'is_start' => false,
|
||
'is_end' => false,
|
||
'answer_options' => [
|
||
['display_text' => 'Yes', 'value' => '1688_order_verified', 'next_question_number' => '1688_order_verified'],
|
||
['display_text' => 'No', 'value' => '1688_order_verified', 'next_question_number' => '1688_order_verified'],
|
||
],
|
||
'group' => '1688',
|
||
],
|
||
[
|
||
'question_number' => '1688_proceed_order',
|
||
'question_title' => 'Proceed the order on 1688?',
|
||
'question_type' => QAType::MULTIPLE_CHOICES,
|
||
'is_start' => false,
|
||
'is_end' => false,
|
||
'answer_options' => [
|
||
['display_text' => 'Yes', 'value' => '1688_submit', 'next_question_number' => '1688_submit'],
|
||
['display_text' => 'Got Issue', 'value' => '1688_proceed_order_issue', 'next_question_number' => '1688_proceed_order_issue'],
|
||
],
|
||
'group' => '1688',
|
||
],
|
||
[
|
||
'question_number' => '1688_proceed_order_issue',
|
||
'question_title' => '1688_proceed_order_issue',
|
||
'question_type' => QAType::MULTIPLE_CHOICES,
|
||
'is_start' => false,
|
||
'is_end' => false,
|
||
'answer_options' => [
|
||
['display_text' => 'Wrong Pin Number', 'value' => '1688_proceed_order_issue_wrong_pin_number', 'next_question_number' => '1688_issue_submit'],
|
||
['display_text' => 'Not Enough Stock', 'value' => '1688_proceed_order_issue_not_enough_stock', 'next_question_number' => '1688_issue_submit'],
|
||
['display_text' => 'Others', 'value' => '1688_proceed_order_issue_others', 'next_question_number' => '1688_proceed_order_issue_others'],
|
||
['display_text' => 'No CrossBoarder', 'value' => '1688_proceed_order_issue_no_crossborder', 'next_question_number' => '1688_issue_submit'],
|
||
['display_text' => 'AngPau', 'value' => '1688_proceed_order_issue_angpau', 'next_question_number' => '1688_issue_submit'],
|
||
],
|
||
'group' => '1688',
|
||
'is_admin_filter' => true
|
||
],
|
||
[
|
||
'question_number' => '1688_proceed_order_issue_others',
|
||
'question_title' => 'What other issues did you encounter? Upload documents if needed',
|
||
'question_type' => QAType::REMARKS_WITH_DOCUMENT_UPLOAD,
|
||
'next_nested_question' => '1688_issue_submit',
|
||
'is_start' => false,
|
||
'is_end' => false,
|
||
'group' => '1688',
|
||
'is_admin_filter' => true
|
||
],
|
||
[
|
||
'question_number' => '1688_login_issue_others',
|
||
'question_title' => 'What other issues did you encounter? Upload documents if needed',
|
||
'question_type' => QAType::REMARKS_WITH_DOCUMENT_UPLOAD,
|
||
'next_nested_question' => '1688_issue_submit',
|
||
'is_start' => false,
|
||
'is_end' => false,
|
||
'group' => '1688',
|
||
'is_admin_filter' => true
|
||
],
|
||
[
|
||
'question_number' => '1688_submit',
|
||
'question_title' => '1688_submit',
|
||
'question_type' => QAType::SUBMIT_1688_3_TYPES_DOCUMENTS,
|
||
'next_nested_question' => '1688_documents_submitted',
|
||
'is_start' => false,
|
||
'is_end' => false,
|
||
'group' => '1688',
|
||
],
|
||
[
|
||
'question_number' => '1688_documents_submitted',
|
||
'question_title' => 'Thank you for the hard work',
|
||
'question_type' => QAType::MULTIPLE_CHOICES,
|
||
'is_start' => false,
|
||
'is_end' => true,
|
||
'answer_options' => [
|
||
['display_text' => 'Stop Working', 'value' => 'stop_working', 'next_question_number' => 'stop_working'],
|
||
['display_text' => 'Next Order', 'value' => '1688', 'next_question_number' => '1688'],
|
||
],
|
||
'group' => '1688',
|
||
],
|
||
[
|
||
'question_number' => '1688_issue_submit',
|
||
'question_title' => 'Issue has been submitted',
|
||
'question_type' => QAType::MULTIPLE_CHOICES,
|
||
'is_start' => false,
|
||
'is_end' => true,
|
||
'answer_options' => [
|
||
['display_text' => 'Stop Working', 'value' => 'stop_working', 'next_question_number' => 'stop_working'],
|
||
['display_text' => 'Next Order', 'value' => '1688', 'next_question_number' => '1688'],
|
||
],
|
||
'group' => '1688',
|
||
],
|
||
[
|
||
'question_number' => '1688_login_issue_refund_request',
|
||
'question_title' => 'Refund Request sent',
|
||
'question_type' => QAType::MULTIPLE_CHOICES,
|
||
'is_start' => false,
|
||
'is_end' => true,
|
||
'answer_options' => [
|
||
['display_text' => 'Stop Working', 'value' => 'stop_working', 'next_question_number' => 'stop_working'],
|
||
['display_text' => 'Next Order', 'value' => '1688', 'next_question_number' => '1688'],
|
||
],
|
||
'group' => '1688',
|
||
],
|
||
// [
|
||
// 'question_number' => '1688_insufficient_order',
|
||
// 'question_title' => 'Are You Sure this is the correct amount?',
|
||
// 'question_type' => QAType::MULTIPLE_CHOICES,
|
||
// 'is_start' => false,
|
||
// 'is_end' => false,
|
||
// 'answer_options' => [
|
||
// ['display_text' => 'Underpaid Order', 'value' => 'underpaid_order_1', 'next_question_number' => '1688_issue_submit'],
|
||
// ['display_text' => 'Underpaid Order', 'value' => 'underpaid_order_2', 'next_question_number' => '1688_issue_submit'],
|
||
// ['display_text' => 'Overpaid Order', 'value' => 'underpaid_order_2', 'next_question_number' => '1688_issue_submit'],
|
||
// ],
|
||
// 'group' => '1688',
|
||
// ],
|
||
// [
|
||
// 'question_number' => '1688_order_paid_precisely',
|
||
// 'question_title' => 'Amount paid is same as recorded in system',
|
||
// 'question_type' => QAType::MULTIPLE_CHOICES,
|
||
// 'is_start' => false,
|
||
// 'is_end' => false,
|
||
// 'answer_options' => [
|
||
// ['display_text' => 'Done', 'value' => '1688_issue_submit', 'next_question_number' => '1688_issue_submit'],
|
||
// ],
|
||
// 'group' => '1688',
|
||
// ],
|
||
[
|
||
'question_number' => '1688_underpaid_order_1',
|
||
'question_title' => "This order is underpaid. Clicking 'Next' will deduct the amount short from wallet automatically. ",
|
||
'question_type' => QAType::DEFAULT,
|
||
'is_start' => false,
|
||
'is_end' => false,
|
||
'next_nested_question' => '1688_underpaid_order_1_proceed',
|
||
// 'answer_options' => [
|
||
// ['display_text' => 'Proceed', 'value' => '1688_underpaid_order_1_proceed', 'next_question_number' => '1688_underpaid_order_1_proceed'],
|
||
// ],
|
||
'group' => '1688',
|
||
],
|
||
[
|
||
'question_number' => '1688_underpaid_order_1_proceed',
|
||
'question_title' => "The missing amount has successfully been deducted from the customer’s wallet",
|
||
'question_type' => QAType::DEFAULT,
|
||
'is_start' => false,
|
||
'is_end' => true,
|
||
'next_nested_question' => '1688_underpaid_proceed_order',
|
||
// 'answer_options' => [
|
||
// ['display_text' => 'Done', 'value' => '1688_issue_submit', 'next_question_number' => '1688_issue_submit'],
|
||
// ],
|
||
'group' => '1688',
|
||
],
|
||
[
|
||
'question_number' => '1688_underpaid_order_2',
|
||
'question_title' => 'Underpaid Order',
|
||
'question_description' => 'Insufficient wallet balance. Refund request sent.',
|
||
'question_type' => QAType::MULTIPLE_CHOICES,
|
||
'is_start' => false,
|
||
'is_end' => false,
|
||
'answer_options' => [
|
||
['display_text' => 'Done', 'value' => '1688_underpaid_order_2_submitted', 'next_question_number' => '1688_underpaid_order_2_submitted'],
|
||
],
|
||
'group' => '1688',
|
||
],
|
||
// [
|
||
// 'question_number' => '1688_underpaid_order_3',
|
||
// 'question_title' => 'Underpaid Order?',
|
||
// 'question_description' => 'There is no outstanding on record, please go back and check if the amount processed is entered correctly.',
|
||
// 'question_type' => QAType::MULTIPLE_CHOICES,
|
||
// 'is_start' => false,
|
||
// 'is_end' => false,
|
||
// 'answer_options' => [
|
||
// ['display_text' => 'Done', 'value' => '1688_issue_submit', 'next_question_number' => '1688_issue_submit'],
|
||
// ],
|
||
// 'group' => '1688',
|
||
// ],
|
||
[
|
||
'question_number' => '1688_overpaid_order',
|
||
'question_title' => 'Overpaid Order',
|
||
'question_description' => 'A refund request has been sent for the excess amount',
|
||
'question_type' => QAType::MULTIPLE_CHOICES,
|
||
'is_start' => false,
|
||
'is_end' => false,
|
||
'answer_options' => [
|
||
['display_text' => 'Proceed', 'value' => '1688_overpaid_proceed_order', 'next_question_number' => '1688_overpaid_proceed_order'],
|
||
],
|
||
'group' => '1688',
|
||
],
|
||
|
||
// 1688 underpaid - starts
|
||
[
|
||
'question_number' => '1688_underpaid_proceed_order',
|
||
'question_title' => 'Please process the order on 1688',
|
||
'question_type' => QAType::MULTIPLE_CHOICES,
|
||
'is_start' => false,
|
||
'is_end' => false,
|
||
'answer_options' => [
|
||
['display_text' => 'Done', 'value' => '1688_underpaid_documents_submission', 'next_question_number' => '1688_underpaid_documents_submission'],
|
||
['display_text' => 'Got Issue', 'value' => '1688_underpaid_proceed_order_issue', 'next_question_number' => '1688_underpaid_proceed_order_issue'],
|
||
],
|
||
'group' => '1688',
|
||
],
|
||
[
|
||
'question_number' => '1688_underpaid_proceed_order_issue',
|
||
'question_title' => '1688_underpaid_proceed_order_issue',
|
||
'question_type' => QAType::MULTIPLE_CHOICES,
|
||
'is_start' => false,
|
||
'is_end' => false,
|
||
'answer_options' => [
|
||
['display_text' => 'Wrong Pin Number', 'value' => '1688_underpaid_proceed_order_issue_wrong_pin_number', 'next_question_number' => '1688_underpaid_issue_submit'],
|
||
['display_text' => 'Not Enough Stock', 'value' => '1688_underpaid_proceed_order_issue_not_enough_stock', 'next_question_number' => '1688_underpaid_issue_submit'],
|
||
['display_text' => 'Others', 'value' => '1688_underpaid_proceed_order_issue_others', 'next_question_number' => '1688_underpaid_proceed_order_issue_others'],
|
||
['display_text' => 'No CrossBoarder', 'value' => '1688_underpaid_proceed_order_issue_no_crossborder', 'next_question_number' => '1688_underpaid_issue_submit'],
|
||
['display_text' => 'AngPau', 'value' => '1688_underpaid_proceed_order_issue_angpau', 'next_question_number' => '1688_underpaid_issue_submit'],
|
||
],
|
||
'group' => '1688',
|
||
'is_admin_filter' => true
|
||
],
|
||
[
|
||
'question_number' => '1688_underpaid_proceed_order_issue_others',
|
||
'question_title' => 'What other issues did you encounter? Upload documents if needed',
|
||
'question_type' => QAType::REMARKS_WITH_DOCUMENT_UPLOAD,
|
||
'next_nested_question' => '1688_underpaid_issue_submit',
|
||
'is_start' => false,
|
||
'is_end' => false,
|
||
'group' => '1688',
|
||
'is_admin_filter' => true
|
||
],
|
||
[
|
||
'question_number' => '1688_underpaid_documents_submission',
|
||
'question_title' => '1688_underpaid_documents_submission',
|
||
'question_type' => QAType::SUBMIT_1688_3_TYPES_DOCUMENTS,
|
||
'next_nested_question' => '1688_underpaid_documents_submitted',
|
||
'is_start' => false,
|
||
'is_end' => false,
|
||
'group' => '1688',
|
||
],
|
||
[
|
||
'question_number' => '1688_underpaid_documents_submitted',
|
||
'question_title' => 'Thank you for your hard work',
|
||
'question_type' => QAType::MULTIPLE_CHOICES,
|
||
'is_start' => false,
|
||
'is_end' => true,
|
||
'answer_options' => [
|
||
['display_text' => 'Stop Working', 'value' => 'stop_working', 'next_question_number' => 'stop_working'],
|
||
['display_text' => 'Next Order', 'value' => '1688', 'next_question_number' => '1688'],
|
||
],
|
||
'group' => '1688',
|
||
],
|
||
[
|
||
'question_number' => '1688_underpaid_issue_submit',
|
||
'question_title' => 'Issue has been submitted',
|
||
'question_type' => QAType::MULTIPLE_CHOICES,
|
||
'is_start' => false,
|
||
'is_end' => true,
|
||
'answer_options' => [
|
||
['display_text' => 'Stop Working', 'value' => 'stop_working', 'next_question_number' => 'stop_working'],
|
||
['display_text' => 'Next Order', 'value' => '1688', 'next_question_number' => '1688'],
|
||
],
|
||
'group' => '1688',
|
||
],
|
||
[
|
||
'question_number' => '1688_underpaid_order_2_submitted',
|
||
'question_title' => 'Issue has been submitted',
|
||
'question_type' => QAType::MULTIPLE_CHOICES,
|
||
'is_start' => false,
|
||
'is_end' => true,
|
||
'answer_options' => [
|
||
['display_text' => 'Stop Working', 'value' => 'stop_working', 'next_question_number' => 'stop_working'],
|
||
['display_text' => 'Next Order', 'value' => '1688', 'next_question_number' => '1688'],
|
||
],
|
||
'group' => '1688',
|
||
],
|
||
// 1688 underpaid - ends
|
||
// 1688 overpaid - starts
|
||
[
|
||
'question_number' => '1688_overpaid_proceed_order',
|
||
'question_title' => 'Please process the order on 1688',
|
||
'question_type' => QAType::MULTIPLE_CHOICES,
|
||
'is_start' => false,
|
||
'is_end' => false,
|
||
'answer_options' => [
|
||
['display_text' => 'Done', 'value' => '1688_overpaid_documents_submission', 'next_question_number' => '1688_overpaid_documents_submission'],
|
||
['display_text' => 'Got Issue', 'value' => '1688_overpaid_proceed_order_issue', 'next_question_number' => '1688_overpaid_proceed_order_issue'],
|
||
],
|
||
'group' => '1688',
|
||
],
|
||
[
|
||
'question_number' => '1688_overpaid_proceed_order_issue',
|
||
'question_title' => '1688_overpaid_proceed_order_issue',
|
||
'question_type' => QAType::MULTIPLE_CHOICES,
|
||
'is_start' => false,
|
||
'is_end' => false,
|
||
'answer_options' => [
|
||
['display_text' => 'Wrong Pin Number', 'value' => '1688_overpaid_proceed_order_issue_wrong_pin_number', 'next_question_number' => '1688_overpaid_issue_submit'],
|
||
['display_text' => 'Not Enough Stock', 'value' => '1688_overpaid_proceed_order_issue_not_enough_stock', 'next_question_number' => '1688_overpaid_issue_submit'],
|
||
['display_text' => 'Others', 'value' => '1688_overpaid_proceed_order_issue_others', 'next_question_number' => '1688_overpaid_proceed_order_issue_others'],
|
||
['display_text' => 'No CrossBoarder', 'value' => '1688_overpaid_proceed_order_issue_no_crossborder', 'next_question_number' => '1688_overpaid_issue_submit'],
|
||
['display_text' => 'AngPau', 'value' => '1688_overpaid_proceed_order_issue_angpau', 'next_question_number' => '1688_overpaid_issue_submit'],
|
||
],
|
||
'group' => '1688',
|
||
'is_admin_filter' => true
|
||
],
|
||
[
|
||
'question_number' => '1688_overpaid_proceed_order_issue_others',
|
||
'question_title' => 'What other issues did you encounter? Upload documents if needed',
|
||
'question_type' => QAType::REMARKS_WITH_DOCUMENT_UPLOAD,
|
||
'next_nested_question' => '1688_overpaid_issue_submit',
|
||
'is_start' => false,
|
||
'is_end' => false,
|
||
'group' => '1688',
|
||
'is_admin_filter' => true
|
||
],
|
||
[
|
||
'question_number' => '1688_overpaid_documents_submission',
|
||
'question_title' => '1688_overpaid_documents_submission',
|
||
'question_type' => QAType::SUBMIT_1688_3_TYPES_DOCUMENTS,
|
||
'next_nested_question' => '1688_overpaid_documents_submitted',
|
||
'is_start' => false,
|
||
'is_end' => false,
|
||
'group' => '1688',
|
||
],
|
||
[
|
||
'question_number' => '1688_overpaid_documents_submitted',
|
||
'question_title' => 'Thank you for your hard work',
|
||
'question_type' => QAType::MULTIPLE_CHOICES,
|
||
'is_start' => false,
|
||
'is_end' => true,
|
||
'answer_options' => [
|
||
['display_text' => 'Stop Working', 'value' => 'stop_working', 'next_question_number' => 'stop_working'],
|
||
['display_text' => 'Next Order', 'value' => '1688', 'next_question_number' => '1688'],
|
||
],
|
||
'group' => '1688',
|
||
],
|
||
[
|
||
'question_number' => '1688_overpaid_issue_submit',
|
||
'question_title' => 'Issue has been submitted',
|
||
'question_type' => QAType::MULTIPLE_CHOICES,
|
||
'is_start' => false,
|
||
'is_end' => true,
|
||
'answer_options' => [
|
||
['display_text' => 'Stop Working', 'value' => 'stop_working', 'next_question_number' => 'stop_working'],
|
||
['display_text' => 'Next Order', 'value' => '1688', 'next_question_number' => '1688'],
|
||
],
|
||
'group' => '1688',
|
||
],
|
||
// 1688 overpaid - ends
|
||
|
||
[
|
||
'question_number' => 'approve_po',
|
||
'question_title' => 'approve_po',
|
||
'question_type' => QAType::MULTIPLE_CHOICES,
|
||
'url' => "api.admin_work_flow.fetch_pending_approve_po",
|
||
'is_start' => true,
|
||
'is_end' => false,
|
||
'answer_options' => [
|
||
['display_text' => 'Approve', 'value' => 'approve_po_approved', 'next_question_number' => 'approve_po_approved'],
|
||
['display_text' => 'Edit PO', 'value' => 'approve_po_edit', 'next_question_number' => 'approve_po_edit'],
|
||
['display_text' => 'Reject', 'value' => 'approve_po_reject', 'next_question_number' => 'approve_po_reject'],
|
||
],
|
||
'group' => 'approve_po',
|
||
],
|
||
[
|
||
'question_number' => 'fill_po',
|
||
'question_title' => 'fill_po',
|
||
'question_type' => QAType::MULTIPLE_CHOICES,
|
||
'url' => "api.admin_work_flow.fetch_pending_fill_po",
|
||
'is_start' => true,
|
||
'is_end' => false,
|
||
'answer_options' => [
|
||
['display_text' => 'Edit PO', 'value' => 'fill_po_edit', 'next_question_number' => 'fill_po_edit'],
|
||
],
|
||
'group' => 'fill_po',
|
||
],
|
||
[
|
||
'question_number' => 'approve_po_filled',
|
||
'question_title' => 'PO Filled',
|
||
'question_type' => QAType::MULTIPLE_CHOICES,
|
||
'is_start' => false,
|
||
'is_end' => true,
|
||
'answer_options' => [
|
||
['display_text' => 'Stop Working', 'value' => 'stop_working', 'next_question_number' => 'stop_working'],
|
||
['display_text' => 'Next PO (Fill)', 'value' => 'fill_po', 'next_question_number' => 'fill_po'],
|
||
['display_text' => 'Next PO (Approve)', 'value' => 'approve_po', 'next_question_number' => 'approve_po'],
|
||
],
|
||
'group' => 'approve_po',
|
||
],
|
||
[
|
||
'question_number' => 'approve_po_approved',
|
||
'question_title' => 'PO Approved',
|
||
'question_type' => QAType::MULTIPLE_CHOICES,
|
||
'is_start' => false,
|
||
'is_end' => true,
|
||
'answer_options' => [
|
||
['display_text' => 'Stop Working', 'value' => 'stop_working', 'next_question_number' => 'stop_working'],
|
||
['display_text' => 'Next PO (Fill)', 'value' => 'fill_po', 'next_question_number' => 'fill_po'],
|
||
['display_text' => 'Next PO (Approve)', 'value' => 'approve_po', 'next_question_number' => 'approve_po'],
|
||
],
|
||
'group' => 'approve_po',
|
||
],
|
||
[
|
||
'question_number' => 'approve_po_edit',
|
||
'question_title' => 'approve_po_edit',
|
||
'question_type' => QAType::MULTIPLE_CHOICES,
|
||
'url' => "api.booking.show",
|
||
'is_start' => false,
|
||
'is_end' => false,
|
||
'answer_options' => [
|
||
['display_text' => 'Issue?', 'value' => 'approve_po_edit_po_issue', 'next_question_number' => 'approve_po_edit_po_issue'],
|
||
['display_text' => 'Done', 'value' => 'approve_po_filled', 'next_question_number' => 'approve_po_filled'],
|
||
],
|
||
'group' => 'approve_po',
|
||
],
|
||
[
|
||
'question_number' => 'approve_po_reject',
|
||
'question_title' => 'PO Rejected',
|
||
'question_type' => QAType::MULTIPLE_CHOICES,
|
||
'is_start' => false,
|
||
'is_end' => false,
|
||
'answer_options' => [
|
||
['display_text' => 'Sensitive Goods', 'value' => 'Sensitive Goods', 'next_question_number' => 'approve_po_reject_others_complete'],
|
||
['display_text' => 'Others', 'value' => 'approve_po_reject_others', 'next_question_number' => 'approve_po_reject_others'],
|
||
// ['display_text' => 'Stop Working', 'value' => 'stop_working', 'next_question_number' => 'stop_working'],
|
||
// ['display_text' => 'Next Order', 'value' => 'approve_po', 'next_question_number' => 'approve_po'],
|
||
],
|
||
'group' => 'approve_po',
|
||
'is_admin_filter' => true
|
||
],
|
||
[
|
||
'question_number' => 'approve_po_reject_others',
|
||
'question_title' => 'What other issues did you encounter? Upload documents if needed',
|
||
'question_type' => QAType::REMARKS_WITH_DOCUMENT_UPLOAD,
|
||
'next_nested_question' => 'approve_po_reject_others_complete',
|
||
'is_start' => false,
|
||
'is_end' => false,
|
||
'group' => 'approve_po',
|
||
'is_admin_filter' => true
|
||
],
|
||
[
|
||
'question_number' => 'approve_po_reject_others_complete',
|
||
'question_title' => 'Issue has been submitted',
|
||
'question_type' => QAType::MULTIPLE_CHOICES,
|
||
'is_start' => false,
|
||
'is_end' => true,
|
||
'answer_options' => [
|
||
['display_text' => 'Stop Working', 'value' => 'stop_working', 'next_question_number' => 'stop_working'],
|
||
['display_text' => 'Next PO (Fill)', 'value' => 'fill_po', 'next_question_number' => 'fill_po'],
|
||
['display_text' => 'Next PO (Approve)', 'value' => 'approve_po', 'next_question_number' => 'approve_po'],
|
||
],
|
||
'group' => 'approve_po',
|
||
],
|
||
[
|
||
'question_number' => 'approve_po_edit_po_issue',
|
||
'question_title' => 'approve_po_edit_po_issue',
|
||
'question_type' => QAType::MULTIPLE_CHOICES,
|
||
'is_start' => false,
|
||
'is_end' => false,
|
||
'answer_options' => [
|
||
['display_text' => 'Sensitive Goods', 'value' => 'Sensitive Goods', 'next_question_number' => 'approve_po_edit_po_issue_submit'],
|
||
['display_text' => 'Others', 'value' => 'approve_po_edit_po_issue_others', 'next_question_number' => 'approve_po_edit_po_issue_others'],
|
||
],
|
||
'group' => 'approve_po',
|
||
'is_admin_filter' => true
|
||
],
|
||
[
|
||
'question_number' => 'approve_po_edit_po_issue_submit',
|
||
'question_title' => 'Issue has been submitted',
|
||
'question_type' => QAType::MULTIPLE_CHOICES,
|
||
'is_start' => false,
|
||
'is_end' => true,
|
||
'answer_options' => [
|
||
['display_text' => 'Stop Working', 'value' => 'stop_working', 'next_question_number' => 'stop_working'],
|
||
['display_text' => 'Next PO (Fill)', 'value' => 'fill_po', 'next_question_number' => 'fill_po'],
|
||
['display_text' => 'Next PO (Approve)', 'value' => 'approve_po', 'next_question_number' => 'approve_po'],
|
||
],
|
||
'group' => 'approve_po',
|
||
],
|
||
[
|
||
'question_number' => 'approve_po_edit_po_issue_others',
|
||
'question_title' => 'What other issues did you encounter? Upload documents if needed',
|
||
'question_type' => QAType::REMARKS_WITH_DOCUMENT_UPLOAD,
|
||
'next_nested_question' => 'approve_po_edit_po_issue_submit',
|
||
'is_start' => false,
|
||
'is_end' => false,
|
||
'group' => 'approve_po',
|
||
'is_admin_filter' => true
|
||
],
|
||
[
|
||
'question_number' => 'approve_po_edit_po_issue_submit',
|
||
'question_title' => 'Issue has been submitted',
|
||
'question_type' => QAType::MULTIPLE_CHOICES,
|
||
'is_start' => false,
|
||
'is_end' => true,
|
||
'answer_options' => [
|
||
['display_text' => 'Stop Working', 'value' => 'stop_working', 'next_question_number' => 'stop_working'],
|
||
['display_text' => 'Next PO (Fill)', 'value' => 'fill_po', 'next_question_number' => 'fill_po'],
|
||
['display_text' => 'Next PO (Approve)', 'value' => 'approve_po', 'next_question_number' => 'approve_po'],
|
||
],
|
||
'group' => 'approve_po',
|
||
],
|
||
[
|
||
'question_number' => 'fill_po_issue_others',
|
||
'question_title' => 'What other issues did you encounter? Upload documents if needed',
|
||
'question_type' => QAType::REMARKS_WITH_DOCUMENT_UPLOAD,
|
||
'next_nested_question' => 'fill_po_issue_submit',
|
||
'is_start' => false,
|
||
'is_end' => false,
|
||
'group' => 'fill_po',
|
||
'is_admin_filter' => true
|
||
],
|
||
[
|
||
'question_number' => 'fill_po_issue_submit',
|
||
'question_title' => 'Issue has been submitted',
|
||
'question_type' => QAType::MULTIPLE_CHOICES,
|
||
'is_start' => false,
|
||
'is_end' => true,
|
||
'answer_options' => [
|
||
['display_text' => 'Stop Working', 'value' => 'stop_working', 'next_question_number' => 'stop_working'],
|
||
['display_text' => 'Next PO (Fill)', 'value' => 'fill_po', 'next_question_number' => 'fill_po'],
|
||
['display_text' => 'Next PO (Approve)', 'value' => 'approve_po', 'next_question_number' => 'approve_po'],
|
||
],
|
||
'group' => 'fill_po',
|
||
],
|
||
[
|
||
'question_number' => 'fill_po_edit',
|
||
'question_title' => 'fill_po_edit',
|
||
'question_type' => QAType::MULTIPLE_CHOICES,
|
||
'url' => "api.booking.show",
|
||
'is_start' => false,
|
||
'is_end' => false,
|
||
'answer_options' => [
|
||
['display_text' => 'Issue?', 'value' => 'fill_po_edit_issue', 'next_question_number' => 'fill_po_edit_issue'],
|
||
['display_text' => 'Done', 'value' => 'fill_po_edit_filled', 'next_question_number' => 'fill_po_edit_filled'],
|
||
],
|
||
'group' => 'fill_po',
|
||
],
|
||
[
|
||
'question_number' => 'fill_po_edit_issue',
|
||
'question_title' => 'fill_po_edit_issue',
|
||
'question_type' => QAType::MULTIPLE_CHOICES,
|
||
'is_start' => false,
|
||
'is_end' => false,
|
||
'answer_options' => [
|
||
['display_text' => 'Sensitive Goods', 'value' => 'Sensitive Goods', 'next_question_number' => 'fill_po_issue_submit'],
|
||
['display_text' => 'Others', 'value' => 'fill_po_issue_others', 'next_question_number' => 'fill_po_issue_others'],
|
||
],
|
||
'group' => 'fill_po',
|
||
'is_admin_filter' => true
|
||
],
|
||
[
|
||
'question_number' => 'fill_po_edit_filled',
|
||
'question_title' => 'PO Filled',
|
||
'question_type' => QAType::MULTIPLE_CHOICES,
|
||
'is_start' => false,
|
||
'is_end' => true,
|
||
'answer_options' => [
|
||
['display_text' => 'Stop Working', 'value' => 'stop_working', 'next_question_number' => 'stop_working'],
|
||
['display_text' => 'Next PO (Fill)', 'value' => 'fill_po', 'next_question_number' => 'fill_po'],
|
||
['display_text' => 'Next PO (Approve)', 'value' => 'approve_po', 'next_question_number' => 'approve_po'],
|
||
],
|
||
'group' => 'fill_po',
|
||
],
|
||
[
|
||
'question_number' => 'stop_working',
|
||
'question_title' => 'Thank you. Reload page to restart.',
|
||
'question_type' => QAType::DEFAULT,
|
||
'is_start' => false,
|
||
'is_end' => true,
|
||
'group' => '',
|
||
],
|
||
]
|
||
],
|
||
];
|
||
|
||
foreach ($questionnaireSets as $set) {
|
||
$questionnaireSet = QAQuestionnaireSet::create([
|
||
'name' => $set['name'],
|
||
'description' => $set['description'],
|
||
'group' => $set['group'],
|
||
]);
|
||
|
||
foreach ($set['questions'] as $key => $questionData) {
|
||
$question = new QAQuestions;
|
||
$question->question_number = $questionData['question_number'];
|
||
$question->question_title = $questionData['question_title'];
|
||
if (isset($questionData['question_description'])) {
|
||
$question->question_description = $questionData['question_description'];
|
||
}
|
||
$question->question_type = $questionData['question_type'];
|
||
$question->questionnaire_set_id = $questionnaireSet->id;
|
||
if (isset($questionData['group']) && $questionData['group'] != '') {
|
||
$question->group = $questionData['group'];
|
||
}
|
||
|
||
if (isset($questionData['next_nested_question'])) {
|
||
$question->next_nested_question = $questionData['next_nested_question'];
|
||
}
|
||
if (isset($questionData['next_main_question'])) {
|
||
$question->next_main_question = $questionData['next_main_question'];
|
||
}
|
||
|
||
$question->is_start = $questionData['is_start'];
|
||
$question->is_end = $questionData['is_end'];
|
||
if (isset($questionData['end_text'])) {
|
||
$question->end_text = $questionData['end_text'];
|
||
}
|
||
|
||
if (isset($questionData['url'])) {
|
||
$question->url = $questionData['url'];
|
||
}
|
||
|
||
if (isset($questionData['is_admin_filter'])) {
|
||
$question->is_admin_filter = $questionData['is_admin_filter'];
|
||
}
|
||
|
||
$question->order = $key + 1;
|
||
$question->save();
|
||
|
||
if (isset($questionData['answer_options'])) {
|
||
foreach ($questionData['answer_options'] as $optionData) {
|
||
$answerOption = new QAAnswerOptions;
|
||
$answerOption->display_text = $optionData['display_text'];
|
||
$answerOption->value = $optionData['value'];
|
||
$answerOption->question_number = $questionData['question_number'];
|
||
$answerOption->next_question_number = $optionData['next_question_number'] ?? null;
|
||
$answerOption->questionnaire_set_id = $questionnaireSet->id;
|
||
$answerOption->save();
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|
||
}
|