//生成时间:2025-06-25 16:57:54
#pragma once
#include <rttr/registration>
#include <robotics/logger.hpp>
#include "models/web_drop_config_info.h"
#include "models/web_drop_request_v1_info.h"
#include "models/web_general_config_info.h"
#include "models/web_message_info.h"
#include "models/web_regex_config_info.h"
#include "models/web_response_info.h"
#include "models/web_stepping_request_v1_info.h"
#include "models/web_supply_request_v1_info.h"
#include "models/web_sync_config_info.h"
#include "models/web_sync_item_request_info.h"
#include "models/web_sync_request_info.h"
#include "models/web_user_config_info.h"
#include "controllers/account.hpp"
#include "controllers/drop.hpp"
#include "controllers/general.hpp"
#include "controllers/home.hpp"
#include "controllers/regex.hpp"
#include "controllers/sync.hpp"
#include "controllers/user.hpp"

static void func_3daaaff81c2ba66cd33fd2714715d58c() {
	rttr::registration::class_<struct web_drop_config_info>("drop_config").constructor<>()(rttr::detail::as_object{}).
		property("id",&web_drop_config_info::id)(rttr::metadata("Json","id"),rttr::metadata("Sql","id"),rttr::metadata("Excel",R"(id)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_drop_config_info::id))).
		property("modify_time",&web_drop_config_info::modify_time)(rttr::metadata("Json","modify_time"),rttr::metadata("Sql","modify_time"),rttr::metadata("Excel",R"(modify_time)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_drop_config_info::modify_time))).
		property("type",&web_drop_config_info::type)(rttr::metadata("Json","type"),rttr::metadata("Sql","type"),rttr::metadata("Excel",R"(type)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_drop_config_info::type))).
		property("name",&web_drop_config_info::name)(rttr::metadata("Json","name"),rttr::metadata("Sql","name"),rttr::metadata("Excel",R"(name)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_drop_config_info::name))).
		property("enable",&web_drop_config_info::enable)(rttr::metadata("Json","enable"),rttr::metadata("Sql","enable"),rttr::metadata("Excel",R"(enable)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_drop_config_info::enable))).
		property("remarks",&web_drop_config_info::remarks)(rttr::metadata("Json","remarks"),rttr::metadata("Sql","remarks"),rttr::metadata("Excel",R"(remarks)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_drop_config_info::remarks)));
}
static void func_1ea0d1fed1530ef23d4381146deabe72() {
	rttr::registration::class_<struct web_drop_request_v1_info>("web_drop_request_v1_info").constructor<>()(rttr::detail::as_object{}).
		property("waybill_no",&web_drop_request_v1_info::waybill_no)(rttr::metadata("Json","waybillNo"),rttr::metadata("Sql","waybill_no"),rttr::metadata("Excel",R"(waybill_no)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_drop_request_v1_info::waybill_no))).
		property("lattice_no",&web_drop_request_v1_info::lattice_no)(rttr::metadata("Json","exportNo"),rttr::metadata("Sql","lattice_no"),rttr::metadata("Excel",R"(lattice_no)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_drop_request_v1_info::lattice_no))).
		property("type",&web_drop_request_v1_info::type)(rttr::metadata("Json","dropResultType"),rttr::metadata("Sql","type"),rttr::metadata("Excel",R"(type)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_drop_request_v1_info::type)));
}
static void func_c848cc1ac1751ac1a6f07574bcbec8a9() {
	rttr::registration::class_<struct web_general_config_info>("general_config").constructor<>()(rttr::detail::as_object{}).
		property("id",&web_general_config_info::id)(rttr::metadata("Json","id"),rttr::metadata("Sql","id"),rttr::metadata("Excel",R"(id)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_general_config_info::id))).
		property("modify_time",&web_general_config_info::modify_time)(rttr::metadata("Json","modify_time"),rttr::metadata("Sql","modify_time"),rttr::metadata("Excel",R"(modify_time)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_general_config_info::modify_time))).
		property("key",&web_general_config_info::key)(rttr::metadata("Json","key"),rttr::metadata("Sql","key"),rttr::metadata("Excel",R"(key)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_general_config_info::key))).
		property("value",&web_general_config_info::value)(rttr::metadata("Json","value"),rttr::metadata("Sql","value"),rttr::metadata("Excel",R"(value)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_general_config_info::value))).
		property("enable",&web_general_config_info::enable)(rttr::metadata("Json","enable"),rttr::metadata("Sql","enable"),rttr::metadata("Excel",R"(enable)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_general_config_info::enable))).
		property("remarks",&web_general_config_info::remarks)(rttr::metadata("Json","remarks"),rttr::metadata("Sql","remarks"),rttr::metadata("Excel",R"(remarks)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_general_config_info::remarks)));
}
static void func_ec540cefe487ce4b8dd638dd193d7798() {
	rttr::registration::class_<struct web_message_info>("web_message_info").constructor<>()(rttr::detail::as_object{}).
		property("success",&web_message_info::success)(rttr::metadata("Json","success"),rttr::metadata("Sql","success"),rttr::metadata("Excel",R"(success)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_message_info::success))).
		property("message",&web_message_info::message)(rttr::metadata("Json","message"),rttr::metadata("Sql","message"),rttr::metadata("Excel",R"(message)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_message_info::message)));
}
static void func_990425bae940258d4deb4a49e335e129() {
	rttr::registration::class_<struct web_regex_config_info>("regex_config").constructor<>()(rttr::detail::as_object{}).
		property("id",&web_regex_config_info::id)(rttr::metadata("Json","id"),rttr::metadata("Sql","id"),rttr::metadata("Excel",R"(id)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_regex_config_info::id))).
		property("modify_time",&web_regex_config_info::modify_time)(rttr::metadata("Json","modify_time"),rttr::metadata("Sql","modify_time"),rttr::metadata("Excel",R"(modify_time)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_regex_config_info::modify_time))).
		property("type",&web_regex_config_info::type)(rttr::metadata("Json","type"),rttr::metadata("Sql","type"),rttr::metadata("Excel",R"(type)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_regex_config_info::type))).
		property("name",&web_regex_config_info::name)(rttr::metadata("Json","name"),rttr::metadata("Sql","name"),rttr::metadata("Excel",R"(name)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_regex_config_info::name))).
		property("regex",&web_regex_config_info::regex)(rttr::metadata("Json","regex"),rttr::metadata("Sql","regex"),rttr::metadata("Excel",R"(regex)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_regex_config_info::regex))).
		property("enable",&web_regex_config_info::enable)(rttr::metadata("Json","enable"),rttr::metadata("Sql","enable"),rttr::metadata("Excel",R"(enable)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_regex_config_info::enable))).
		property("remarks",&web_regex_config_info::remarks)(rttr::metadata("Json","remarks"),rttr::metadata("Sql","remarks"),rttr::metadata("Excel",R"(remarks)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_regex_config_info::remarks)));
}
static void func_3b5abe1a37cc06e34fc113c437ad1778() {
	rttr::registration::class_<struct web_response_info<web_drop_config_info>>("web_response_info<web_drop_config_info>").constructor<>()(rttr::detail::as_object{}).
		property("code",&web_response_info<web_drop_config_info>::code)(rttr::metadata("Json","code"),rttr::metadata("Sql","code"),rttr::metadata("Excel",R"(code)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_response_info<web_drop_config_info>::code))).
		property("msg",&web_response_info<web_drop_config_info>::msg)(rttr::metadata("Json","msg"),rttr::metadata("Sql","msg"),rttr::metadata("Excel",R"(msg)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_response_info<web_drop_config_info>::msg))).
		property("count",&web_response_info<web_drop_config_info>::count)(rttr::metadata("Json","count"),rttr::metadata("Sql","count"),rttr::metadata("Excel",R"(count)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_response_info<web_drop_config_info>::count))).
		property("data",&web_response_info<web_drop_config_info>::data)(rttr::metadata("Json","data"),rttr::metadata("Sql","data"),rttr::metadata("Excel",R"(data)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_response_info<web_drop_config_info>::data)));
	rttr::registration::class_<struct web_response_info<web_general_config_info>>("web_response_info<web_general_config_info>").constructor<>()(rttr::detail::as_object{}).
		property("code",&web_response_info<web_general_config_info>::code)(rttr::metadata("Json","code"),rttr::metadata("Sql","code"),rttr::metadata("Excel",R"(code)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_response_info<web_general_config_info>::code))).
		property("msg",&web_response_info<web_general_config_info>::msg)(rttr::metadata("Json","msg"),rttr::metadata("Sql","msg"),rttr::metadata("Excel",R"(msg)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_response_info<web_general_config_info>::msg))).
		property("count",&web_response_info<web_general_config_info>::count)(rttr::metadata("Json","count"),rttr::metadata("Sql","count"),rttr::metadata("Excel",R"(count)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_response_info<web_general_config_info>::count))).
		property("data",&web_response_info<web_general_config_info>::data)(rttr::metadata("Json","data"),rttr::metadata("Sql","data"),rttr::metadata("Excel",R"(data)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_response_info<web_general_config_info>::data)));
	rttr::registration::class_<struct web_response_info<web_regex_config_info>>("web_response_info<web_regex_config_info>").constructor<>()(rttr::detail::as_object{}).
		property("code",&web_response_info<web_regex_config_info>::code)(rttr::metadata("Json","code"),rttr::metadata("Sql","code"),rttr::metadata("Excel",R"(code)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_response_info<web_regex_config_info>::code))).
		property("msg",&web_response_info<web_regex_config_info>::msg)(rttr::metadata("Json","msg"),rttr::metadata("Sql","msg"),rttr::metadata("Excel",R"(msg)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_response_info<web_regex_config_info>::msg))).
		property("count",&web_response_info<web_regex_config_info>::count)(rttr::metadata("Json","count"),rttr::metadata("Sql","count"),rttr::metadata("Excel",R"(count)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_response_info<web_regex_config_info>::count))).
		property("data",&web_response_info<web_regex_config_info>::data)(rttr::metadata("Json","data"),rttr::metadata("Sql","data"),rttr::metadata("Excel",R"(data)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_response_info<web_regex_config_info>::data)));
	rttr::registration::class_<struct web_response_info<web_sync_config_info>>("web_response_info<web_sync_config_info>").constructor<>()(rttr::detail::as_object{}).
		property("code",&web_response_info<web_sync_config_info>::code)(rttr::metadata("Json","code"),rttr::metadata("Sql","code"),rttr::metadata("Excel",R"(code)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_response_info<web_sync_config_info>::code))).
		property("msg",&web_response_info<web_sync_config_info>::msg)(rttr::metadata("Json","msg"),rttr::metadata("Sql","msg"),rttr::metadata("Excel",R"(msg)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_response_info<web_sync_config_info>::msg))).
		property("count",&web_response_info<web_sync_config_info>::count)(rttr::metadata("Json","count"),rttr::metadata("Sql","count"),rttr::metadata("Excel",R"(count)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_response_info<web_sync_config_info>::count))).
		property("data",&web_response_info<web_sync_config_info>::data)(rttr::metadata("Json","data"),rttr::metadata("Sql","data"),rttr::metadata("Excel",R"(data)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_response_info<web_sync_config_info>::data)));
	rttr::registration::class_<struct web_response_info<web_user_config_info>>("web_response_info<web_user_config_info>").constructor<>()(rttr::detail::as_object{}).
		property("code",&web_response_info<web_user_config_info>::code)(rttr::metadata("Json","code"),rttr::metadata("Sql","code"),rttr::metadata("Excel",R"(code)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_response_info<web_user_config_info>::code))).
		property("msg",&web_response_info<web_user_config_info>::msg)(rttr::metadata("Json","msg"),rttr::metadata("Sql","msg"),rttr::metadata("Excel",R"(msg)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_response_info<web_user_config_info>::msg))).
		property("count",&web_response_info<web_user_config_info>::count)(rttr::metadata("Json","count"),rttr::metadata("Sql","count"),rttr::metadata("Excel",R"(count)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_response_info<web_user_config_info>::count))).
		property("data",&web_response_info<web_user_config_info>::data)(rttr::metadata("Json","data"),rttr::metadata("Sql","data"),rttr::metadata("Excel",R"(data)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_response_info<web_user_config_info>::data)));
}
static void func_80caaa9c77662308fea8e02de061c75d() {
	rttr::registration::class_<struct web_stepping_request_v1_info>("web_stepping_request_v1_info").constructor<>()(rttr::detail::as_object{}).
		property("layer_no",&web_stepping_request_v1_info::layer_no)(rttr::metadata("Json","layerNo"),rttr::metadata("Sql","layer_no"),rttr::metadata("Excel",R"(layer_no)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_stepping_request_v1_info::layer_no))).
		property("speed",&web_stepping_request_v1_info::speed)(rttr::metadata("Json","speed"),rttr::metadata("Sql","speed"),rttr::metadata("Excel",R"(speed)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_stepping_request_v1_info::speed)));
}
static void func_c30c684ce587ca28ac23f1d09448800f() {
	rttr::registration::class_<struct web_supply_request_v1_info>("web_supply_request_v1_info").constructor<>()(rttr::detail::as_object{}).
		property("waybill_no",&web_supply_request_v1_info::waybill_no)(rttr::metadata("Json","waybillNo"),rttr::metadata("Sql","waybill_no"),rttr::metadata("Excel",R"(waybill_no)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_supply_request_v1_info::waybill_no))).
		property("supply_no",&web_supply_request_v1_info::supply_no)(rttr::metadata("Json","supplyNo"),rttr::metadata("Sql","supply_no"),rttr::metadata("Excel",R"(supply_no)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_supply_request_v1_info::supply_no)));
}
static void func_4f8ad4e9233991e41e912427ffb37475() {
	rttr::registration::class_<struct web_sync_config_info>("sync_config").constructor<>()(rttr::detail::as_object{}).
		property("id",&web_sync_config_info::id)(rttr::metadata("Json","id"),rttr::metadata("Sql","id"),rttr::metadata("Excel",R"(id)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_sync_config_info::id))).
		property("create_time",&web_sync_config_info::create_time)(rttr::metadata("Json","create_time"),rttr::metadata("Sql","create_time"),rttr::metadata("Excel",R"(create_time)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_sync_config_info::create_time))).
		property("device_id",&web_sync_config_info::device_id)(rttr::metadata("Json","device_id"),rttr::metadata("Sql","device_id"),rttr::metadata("Excel",R"(device_id)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_sync_config_info::device_id))).
		property("summary_time",&web_sync_config_info::summary_time)(rttr::metadata("Json","summary_time"),rttr::metadata("Sql","summary_time"),rttr::metadata("Excel",R"(summary_time)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_sync_config_info::summary_time))).
		property("running_distance",&web_sync_config_info::running_distance)(rttr::metadata("Json","running_distance"),rttr::metadata("Sql","running_distance"),rttr::metadata("Excel",R"(running_distance)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_sync_config_info::running_distance))).
		property("speed",&web_sync_config_info::speed)(rttr::metadata("Json","speed"),rttr::metadata("Sql","speed"),rttr::metadata("Excel",R"(speed)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_sync_config_info::speed))).
		property("express_type",&web_sync_config_info::express_type)(rttr::metadata("Json","express_type"),rttr::metadata("Sql","express_type"),rttr::metadata("Excel",R"(express_type)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_sync_config_info::express_type))).
		property("lattice_count",&web_sync_config_info::lattice_count)(rttr::metadata("Json","lattice_count"),rttr::metadata("Sql","lattice_count"),rttr::metadata("Excel",R"(lattice_count)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_sync_config_info::lattice_count))).
		property("supply_count",&web_sync_config_info::supply_count)(rttr::metadata("Json","supply_count"),rttr::metadata("Sql","supply_count"),rttr::metadata("Excel",R"(supply_count)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_sync_config_info::supply_count))).
		property("reflux_count",&web_sync_config_info::reflux_count)(rttr::metadata("Json","reflux_count"),rttr::metadata("Sql","reflux_count"),rttr::metadata("Excel",R"(reflux_count)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_sync_config_info::reflux_count))).
		property("supply_summay",&web_sync_config_info::supply_summay)(rttr::metadata("Json","supply_summay"),rttr::metadata("Sql","supply_summay"),rttr::metadata("Excel",R"(supply_summay)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_sync_config_info::supply_summay))).
		property("lattice_summay",&web_sync_config_info::lattice_summay)(rttr::metadata("Json","lattice_summay"),rttr::metadata("Sql","lattice_summay"),rttr::metadata("Excel",R"(lattice_summay)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_sync_config_info::lattice_summay))).
		property("reflux_summay",&web_sync_config_info::reflux_summay)(rttr::metadata("Json","reflux_summay"),rttr::metadata("Sql","reflux_summay"),rttr::metadata("Excel",R"(reflux_summay)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_sync_config_info::reflux_summay))).
		property("enable",&web_sync_config_info::enable)(rttr::metadata("Json","enable"),rttr::metadata("Sql","enable"),rttr::metadata("Excel",R"(enable)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_sync_config_info::enable))).
		property("remarks",&web_sync_config_info::remarks)(rttr::metadata("Json","remarks"),rttr::metadata("Sql","remarks"),rttr::metadata("Excel",R"(remarks)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_sync_config_info::remarks)));
}
static void func_042f29de443861fc321844c31dde0bae() {
	rttr::registration::class_<struct web_sync_item_request_info>("web_sync_item_request_info").constructor<>()(rttr::detail::as_object{}).
		property("express_type",&web_sync_item_request_info::express_type)(rttr::metadata("Json","expressType"),rttr::metadata("Sql","express_type"),rttr::metadata("Excel",R"(express_type)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_sync_item_request_info::express_type))).
		property("lattice_count",&web_sync_item_request_info::lattice_count)(rttr::metadata("Json","latticeCount"),rttr::metadata("Sql","lattice_count"),rttr::metadata("Excel",R"(lattice_count)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_sync_item_request_info::lattice_count))).
		property("supply_count",&web_sync_item_request_info::supply_count)(rttr::metadata("Json","supplyCount"),rttr::metadata("Sql","supply_count"),rttr::metadata("Excel",R"(supply_count)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_sync_item_request_info::supply_count))).
		property("reflux_count",&web_sync_item_request_info::reflux_count)(rttr::metadata("Json","refluxCount"),rttr::metadata("Sql","reflux_count"),rttr::metadata("Excel",R"(reflux_count)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_sync_item_request_info::reflux_count))).
		property("supply_summay",&web_sync_item_request_info::supply_summay)(rttr::metadata("Json","supplySummay"),rttr::metadata("Sql","supply_summay"),rttr::metadata("Excel",R"(supply_summay)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_sync_item_request_info::supply_summay))).
		property("lattice_summay",&web_sync_item_request_info::lattice_summay)(rttr::metadata("Json","latticeSummay"),rttr::metadata("Sql","lattice_summay"),rttr::metadata("Excel",R"(lattice_summay)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_sync_item_request_info::lattice_summay))).
		property("reflux_summay",&web_sync_item_request_info::reflux_summay)(rttr::metadata("Json","refluxSummay"),rttr::metadata("Sql","reflux_summay"),rttr::metadata("Excel",R"(reflux_summay)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_sync_item_request_info::reflux_summay)));
}
static void func_51e1f6760b5ace227b3786ab922e21b0() {
	rttr::registration::class_<struct web_sync_request_info>("web_sync_request_info").constructor<>()(rttr::detail::as_object{}).
		property("device_id",&web_sync_request_info::device_id)(rttr::metadata("Json","deviceId"),rttr::metadata("Sql","device_id"),rttr::metadata("Excel",R"(device_id)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_sync_request_info::device_id))).
		property("summary_time",&web_sync_request_info::summary_time)(rttr::metadata("Json","summaryTime"),rttr::metadata("Sql","summary_time"),rttr::metadata("Excel",R"(summary_time)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_sync_request_info::summary_time))).
		property("running_distance",&web_sync_request_info::running_distance)(rttr::metadata("Json","runningDistance"),rttr::metadata("Sql","running_distance"),rttr::metadata("Excel",R"(running_distance)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_sync_request_info::running_distance))).
		property("speed",&web_sync_request_info::speed)(rttr::metadata("Json","speed"),rttr::metadata("Sql","speed"),rttr::metadata("Excel",R"(speed)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_sync_request_info::speed))).
		property("data",&web_sync_request_info::data)(rttr::metadata("Json","data"),rttr::metadata("Sql","data"),rttr::metadata("Excel",R"(data)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_sync_request_info::data)));
}
static void func_a44b76e0947b4f13d12754a079139374() {
	rttr::registration::class_<struct web_user_config_info>("user_config").constructor<>()(rttr::detail::as_object{}).
		property("id",&web_user_config_info::id)(rttr::metadata("Json","id"),rttr::metadata("Sql","id"),rttr::metadata("Excel",R"(id)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_user_config_info::id))).
		property("modify_time",&web_user_config_info::modify_time)(rttr::metadata("Json","modify_time"),rttr::metadata("Sql","modify_time"),rttr::metadata("Excel",R"(modify_time)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_user_config_info::modify_time))).
		property("name",&web_user_config_info::name)(rttr::metadata("Json","name"),rttr::metadata("Sql","name"),rttr::metadata("Excel",R"(name)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_user_config_info::name))).
		property("code",&web_user_config_info::code)(rttr::metadata("Json","code"),rttr::metadata("Sql","code"),rttr::metadata("Excel",R"(code)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_user_config_info::code))).
		property("password",&web_user_config_info::password)(rttr::metadata("Json","password"),rttr::metadata("Sql","password"),rttr::metadata("Excel",R"(password)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_user_config_info::password))).
		property("enable",&web_user_config_info::enable)(rttr::metadata("Json","enable"),rttr::metadata("Sql","enable"),rttr::metadata("Excel",R"(enable)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_user_config_info::enable))).
		property("remarks",&web_user_config_info::remarks)(rttr::metadata("Json","remarks"),rttr::metadata("Sql","remarks"),rttr::metadata("Excel",R"(remarks)"),rttr::metadata("NoJson",false),rttr::metadata("NoSql",false),rttr::metadata("NoExcel",false),rttr::metadata("SqlKey",false),rttr::metadata("NoArchive",false),rttr::metadata("Offset",robotics::v3::utils::pointer_cast<int>(&web_user_config_info::remarks)));
}
static void func_f7cd3f2da2d2ef2dc5b636d7e412f6f1() {
	rttr::registration::class_<class account>("account").constructor<>()().
		method("index",&account::index).
		method("captcha",&account::captcha)(rttr::default_arguments(std::string{}),rttr::parameter_names("v")).
		method("login",&account::login)(rttr::default_arguments(std::string{},std::string{},std::string{}),rttr::parameter_names("username","password","captcha")).
		method("logout",&account::logout);
	std::shared_ptr<robotics::v3::mvc::controller> controller(new robotics::v3::mvc::controller());
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		action->action_name = "index";
		action->parent = controller;
		action->authen = false;
		action->authen_jump = "home/index";
		action->content_type = "application/x-www-form-urlencoded";
		action->action_type = "";
		action->file_mapping = "account/index.html";
		action->method = robotics::v3::mvc::http_method::GET;
		controller->actions["account/index"] = action;
	}
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::String;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::QUERY;
			argument->parameter_name_ = "v";
			action->arguments.push_back(argument);
		}
		action->action_name = "captcha";
		action->parent = controller;
		action->authen = false;
		action->authen_jump = "home/index";
		action->content_type = "application/x-www-form-urlencoded";
		action->action_type = "";
		action->file_mapping = "";
		action->method = robotics::v3::mvc::http_method::GET;
		controller->actions["account/captcha"] = action;
	}
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::String;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::BODY;
			argument->parameter_name_ = "username";
			action->arguments.push_back(argument);
		}
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::String;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::BODY;
			argument->parameter_name_ = "password";
			action->arguments.push_back(argument);
		}
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::String;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::BODY;
			argument->parameter_name_ = "captcha";
			action->arguments.push_back(argument);
		}
		action->action_name = "login";
		action->parent = controller;
		action->authen = false;
		action->authen_jump = "home/index";
		action->content_type = "application/x-www-form-urlencoded";
		action->action_type = "";
		action->file_mapping = "";
		action->method = robotics::v3::mvc::http_method::POST;
		controller->actions["account/login"] = action;
	}
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		action->action_name = "logout";
		action->parent = controller;
		action->authen = true;
		action->authen_jump = "";
		action->content_type = "application/x-www-form-urlencoded";
		action->action_type = "";
		action->file_mapping = "";
		action->method = robotics::v3::mvc::http_method::GET;
		controller->actions["account/logout"] = action;
	}
	controller->controller_name = "account";
	robotics::v3::mvc::ico_controller::attach(controller);
}
static void func_ec5c84ba1d7c2aff0b24f55882793a39() {
	rttr::registration::class_<class drop>("drop").constructor<>()().
		method("index",&drop::index).
		method("load",&drop::load)(rttr::default_arguments(int{},int{},std::string{},std::string{},std::string{}),rttr::parameter_names("page","limit","type","name","enable")).
		method("edit_view",&drop::edit_view)(rttr::default_arguments(int{}),rttr::parameter_names("id")).
		method("edit",&drop::edit)(rttr::default_arguments(web_drop_config_info{}),rttr::parameter_names("value")).
		method("add_view",&drop::add_view).
		method("add",&drop::add)(rttr::default_arguments(web_drop_config_info{}),rttr::parameter_names("value")).
		method("remove",&drop::remove)(rttr::default_arguments(int{}),rttr::parameter_names("id")).
		method("sync",&drop::sync)(rttr::default_arguments(int{}),rttr::parameter_names("id"));
	std::shared_ptr<robotics::v3::mvc::controller> controller(new robotics::v3::mvc::controller());
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		action->action_name = "index";
		action->parent = controller;
		action->authen = true;
		action->authen_jump = "";
		action->content_type = "application/x-www-form-urlencoded";
		action->action_type = "";
		action->file_mapping = "drop/index.html";
		action->method = robotics::v3::mvc::http_method::GET;
		controller->actions["drop/index"] = action;
	}
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::Int;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::QUERY;
			argument->parameter_name_ = "page";
			action->arguments.push_back(argument);
		}
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::Int;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::QUERY;
			argument->parameter_name_ = "limit";
			action->arguments.push_back(argument);
		}
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::String;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::QUERY;
			argument->parameter_name_ = "type";
			action->arguments.push_back(argument);
		}
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::String;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::QUERY;
			argument->parameter_name_ = "name";
			action->arguments.push_back(argument);
		}
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::String;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::QUERY;
			argument->parameter_name_ = "enable";
			action->arguments.push_back(argument);
		}
		action->action_name = "load";
		action->parent = controller;
		action->authen = true;
		action->authen_jump = "";
		action->content_type = "application/x-www-form-urlencoded";
		action->action_type = "";
		action->file_mapping = "";
		action->method = robotics::v3::mvc::http_method::GET;
		controller->actions["drop/load"] = action;
	}
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::Int;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::QUERY;
			argument->parameter_name_ = "id";
			action->arguments.push_back(argument);
		}
		action->action_name = "edit_view";
		action->parent = controller;
		action->authen = true;
		action->authen_jump = "";
		action->content_type = "application/x-www-form-urlencoded";
		action->action_type = "";
		action->file_mapping = "drop/edit.html";
		action->method = robotics::v3::mvc::http_method::GET;
		controller->actions["drop/edit_view"] = action;
	}
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::Json;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::BODY;
			argument->parameter_name_ = "";
			action->arguments.push_back(argument);
		}
		action->action_name = "edit";
		action->parent = controller;
		action->authen = true;
		action->authen_jump = "";
		action->content_type = "application/json";
		action->action_type = "";
		action->file_mapping = "";
		action->method = robotics::v3::mvc::http_method::POST;
		controller->actions["drop/edit"] = action;
	}
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		action->action_name = "add_view";
		action->parent = controller;
		action->authen = true;
		action->authen_jump = "";
		action->content_type = "application/x-www-form-urlencoded";
		action->action_type = "";
		action->file_mapping = "drop/add.html";
		action->method = robotics::v3::mvc::http_method::GET;
		controller->actions["drop/add_view"] = action;
	}
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::Json;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::BODY;
			argument->parameter_name_ = "";
			action->arguments.push_back(argument);
		}
		action->action_name = "add";
		action->parent = controller;
		action->authen = true;
		action->authen_jump = "";
		action->content_type = "application/json";
		action->action_type = "";
		action->file_mapping = "";
		action->method = robotics::v3::mvc::http_method::POST;
		controller->actions["drop/add"] = action;
	}
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::Int;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::BODY;
			argument->parameter_name_ = "id";
			action->arguments.push_back(argument);
		}
		action->action_name = "remove";
		action->parent = controller;
		action->authen = true;
		action->authen_jump = "";
		action->content_type = "application/x-www-form-urlencoded";
		action->action_type = "";
		action->file_mapping = "";
		action->method = robotics::v3::mvc::http_method::POST;
		controller->actions["drop/remove"] = action;
	}
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::Int;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::BODY;
			argument->parameter_name_ = "id";
			action->arguments.push_back(argument);
		}
		action->action_name = "sync";
		action->parent = controller;
		action->authen = true;
		action->authen_jump = "";
		action->content_type = "application/x-www-form-urlencoded";
		action->action_type = "";
		action->file_mapping = "";
		action->method = robotics::v3::mvc::http_method::POST;
		controller->actions["drop/sync"] = action;
	}
	controller->controller_name = "drop";
	robotics::v3::mvc::ico_controller::attach(controller);
}
static void func_8000641db92a90be3900cab4eee90ec4() {
	rttr::registration::class_<class general>("general").constructor<>()().
		method("index",&general::index).
		method("load",&general::load)(rttr::default_arguments(int{},int{},std::string{},std::string{},std::string{}),rttr::parameter_names("page","limit","key","value","enable")).
		method("edit_view",&general::edit_view)(rttr::default_arguments(int{}),rttr::parameter_names("id")).
		method("edit",&general::edit)(rttr::default_arguments(web_general_config_info{}),rttr::parameter_names("value")).
		method("add_view",&general::add_view).
		method("add",&general::add)(rttr::default_arguments(web_general_config_info{}),rttr::parameter_names("value")).
		method("remove",&general::remove)(rttr::default_arguments(int{}),rttr::parameter_names("id")).
		method("sync",&general::sync)(rttr::default_arguments(int{}),rttr::parameter_names("key"));
	std::shared_ptr<robotics::v3::mvc::controller> controller(new robotics::v3::mvc::controller());
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		action->action_name = "index";
		action->parent = controller;
		action->authen = true;
		action->authen_jump = "";
		action->content_type = "application/x-www-form-urlencoded";
		action->action_type = "";
		action->file_mapping = "general/index.html";
		action->method = robotics::v3::mvc::http_method::GET;
		controller->actions["general/index"] = action;
	}
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::Int;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::QUERY;
			argument->parameter_name_ = "page";
			action->arguments.push_back(argument);
		}
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::Int;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::QUERY;
			argument->parameter_name_ = "limit";
			action->arguments.push_back(argument);
		}
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::String;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::QUERY;
			argument->parameter_name_ = "key";
			action->arguments.push_back(argument);
		}
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::String;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::QUERY;
			argument->parameter_name_ = "value";
			action->arguments.push_back(argument);
		}
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::String;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::QUERY;
			argument->parameter_name_ = "enable";
			action->arguments.push_back(argument);
		}
		action->action_name = "load";
		action->parent = controller;
		action->authen = true;
		action->authen_jump = "";
		action->content_type = "application/x-www-form-urlencoded";
		action->action_type = "";
		action->file_mapping = "";
		action->method = robotics::v3::mvc::http_method::GET;
		controller->actions["general/load"] = action;
	}
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::Int;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::QUERY;
			argument->parameter_name_ = "id";
			action->arguments.push_back(argument);
		}
		action->action_name = "edit_view";
		action->parent = controller;
		action->authen = true;
		action->authen_jump = "";
		action->content_type = "application/x-www-form-urlencoded";
		action->action_type = "";
		action->file_mapping = "general/edit.html";
		action->method = robotics::v3::mvc::http_method::GET;
		controller->actions["general/edit_view"] = action;
	}
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::Json;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::BODY;
			argument->parameter_name_ = "";
			action->arguments.push_back(argument);
		}
		action->action_name = "edit";
		action->parent = controller;
		action->authen = true;
		action->authen_jump = "";
		action->content_type = "application/json";
		action->action_type = "";
		action->file_mapping = "";
		action->method = robotics::v3::mvc::http_method::POST;
		controller->actions["general/edit"] = action;
	}
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		action->action_name = "add_view";
		action->parent = controller;
		action->authen = true;
		action->authen_jump = "";
		action->content_type = "application/x-www-form-urlencoded";
		action->action_type = "";
		action->file_mapping = "general/add.html";
		action->method = robotics::v3::mvc::http_method::GET;
		controller->actions["general/add_view"] = action;
	}
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::Json;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::BODY;
			argument->parameter_name_ = "";
			action->arguments.push_back(argument);
		}
		action->action_name = "add";
		action->parent = controller;
		action->authen = true;
		action->authen_jump = "";
		action->content_type = "application/json";
		action->action_type = "";
		action->file_mapping = "";
		action->method = robotics::v3::mvc::http_method::POST;
		controller->actions["general/add"] = action;
	}
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::Int;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::BODY;
			argument->parameter_name_ = "id";
			action->arguments.push_back(argument);
		}
		action->action_name = "remove";
		action->parent = controller;
		action->authen = true;
		action->authen_jump = "";
		action->content_type = "application/x-www-form-urlencoded";
		action->action_type = "";
		action->file_mapping = "";
		action->method = robotics::v3::mvc::http_method::POST;
		controller->actions["general/remove"] = action;
	}
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::Int;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::BODY;
			argument->parameter_name_ = "key";
			action->arguments.push_back(argument);
		}
		action->action_name = "sync";
		action->parent = controller;
		action->authen = true;
		action->authen_jump = "";
		action->content_type = "application/x-www-form-urlencoded";
		action->action_type = "";
		action->file_mapping = "";
		action->method = robotics::v3::mvc::http_method::POST;
		controller->actions["general/sync"] = action;
	}
	controller->controller_name = "general";
	robotics::v3::mvc::ico_controller::attach(controller);
}
static void func_3e13d70f540bf01b91d59c1ea891539a() {
	rttr::registration::class_<class home>("home").constructor<>()().
		method("index",&home::index).
		method("init",&home::init)(rttr::default_arguments(std::string{}),rttr::parameter_names("v"));
	std::shared_ptr<robotics::v3::mvc::controller> controller(new robotics::v3::mvc::controller());
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		action->action_name = "index";
		action->parent = controller;
		action->authen = true;
		action->authen_jump = "";
		action->content_type = "application/x-www-form-urlencoded";
		action->action_type = "";
		action->file_mapping = "home/index.html";
		action->method = robotics::v3::mvc::http_method::GET;
		controller->actions["home/index"] = action;
	}
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::String;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::QUERY;
			argument->parameter_name_ = "v";
			action->arguments.push_back(argument);
		}
		action->action_name = "init";
		action->parent = controller;
		action->authen = true;
		action->authen_jump = "";
		action->content_type = "application/x-www-form-urlencoded";
		action->action_type = "";
		action->file_mapping = "content/api/init.json";
		action->method = robotics::v3::mvc::http_method::GET;
		controller->actions["home/init"] = action;
	}
	controller->controller_name = "home";
	robotics::v3::mvc::ico_controller::attach(controller);
}
static void func_9b895bea9da69bec088729b415373613() {
	rttr::registration::class_<class regex>("regex").constructor<>()().
		method("index",&regex::index).
		method("load",&regex::load)(rttr::default_arguments(int{},int{},std::string{},std::string{},std::string{}),rttr::parameter_names("page","limit","type","name","enable")).
		method("edit_view",&regex::edit_view)(rttr::default_arguments(int{}),rttr::parameter_names("id")).
		method("edit",&regex::edit)(rttr::default_arguments(web_regex_config_info{}),rttr::parameter_names("value")).
		method("add_view",&regex::add_view).
		method("add",&regex::add)(rttr::default_arguments(web_regex_config_info{}),rttr::parameter_names("value")).
		method("remove",&regex::remove)(rttr::default_arguments(int{}),rttr::parameter_names("id")).
		method("sync",&regex::sync)(rttr::default_arguments(int{}),rttr::parameter_names("id"));
	std::shared_ptr<robotics::v3::mvc::controller> controller(new robotics::v3::mvc::controller());
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		action->action_name = "index";
		action->parent = controller;
		action->authen = true;
		action->authen_jump = "";
		action->content_type = "application/x-www-form-urlencoded";
		action->action_type = "";
		action->file_mapping = "regex/index.html";
		action->method = robotics::v3::mvc::http_method::GET;
		controller->actions["regex/index"] = action;
	}
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::Int;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::QUERY;
			argument->parameter_name_ = "page";
			action->arguments.push_back(argument);
		}
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::Int;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::QUERY;
			argument->parameter_name_ = "limit";
			action->arguments.push_back(argument);
		}
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::String;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::QUERY;
			argument->parameter_name_ = "type";
			action->arguments.push_back(argument);
		}
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::String;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::QUERY;
			argument->parameter_name_ = "name";
			action->arguments.push_back(argument);
		}
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::String;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::QUERY;
			argument->parameter_name_ = "enable";
			action->arguments.push_back(argument);
		}
		action->action_name = "load";
		action->parent = controller;
		action->authen = true;
		action->authen_jump = "";
		action->content_type = "application/x-www-form-urlencoded";
		action->action_type = "";
		action->file_mapping = "";
		action->method = robotics::v3::mvc::http_method::GET;
		controller->actions["regex/load"] = action;
	}
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::Int;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::QUERY;
			argument->parameter_name_ = "id";
			action->arguments.push_back(argument);
		}
		action->action_name = "edit_view";
		action->parent = controller;
		action->authen = true;
		action->authen_jump = "";
		action->content_type = "application/x-www-form-urlencoded";
		action->action_type = "";
		action->file_mapping = "regex/edit.html";
		action->method = robotics::v3::mvc::http_method::GET;
		controller->actions["regex/edit_view"] = action;
	}
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::Json;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::BODY;
			argument->parameter_name_ = "";
			action->arguments.push_back(argument);
		}
		action->action_name = "edit";
		action->parent = controller;
		action->authen = true;
		action->authen_jump = "";
		action->content_type = "application/json";
		action->action_type = "";
		action->file_mapping = "";
		action->method = robotics::v3::mvc::http_method::POST;
		controller->actions["regex/edit"] = action;
	}
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		action->action_name = "add_view";
		action->parent = controller;
		action->authen = true;
		action->authen_jump = "";
		action->content_type = "application/x-www-form-urlencoded";
		action->action_type = "";
		action->file_mapping = "regex/add.html";
		action->method = robotics::v3::mvc::http_method::GET;
		controller->actions["regex/add_view"] = action;
	}
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::Json;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::BODY;
			argument->parameter_name_ = "";
			action->arguments.push_back(argument);
		}
		action->action_name = "add";
		action->parent = controller;
		action->authen = true;
		action->authen_jump = "";
		action->content_type = "application/json";
		action->action_type = "";
		action->file_mapping = "";
		action->method = robotics::v3::mvc::http_method::POST;
		controller->actions["regex/add"] = action;
	}
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::Int;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::BODY;
			argument->parameter_name_ = "id";
			action->arguments.push_back(argument);
		}
		action->action_name = "remove";
		action->parent = controller;
		action->authen = true;
		action->authen_jump = "";
		action->content_type = "application/x-www-form-urlencoded";
		action->action_type = "";
		action->file_mapping = "";
		action->method = robotics::v3::mvc::http_method::POST;
		controller->actions["regex/remove"] = action;
	}
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::Int;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::BODY;
			argument->parameter_name_ = "id";
			action->arguments.push_back(argument);
		}
		action->action_name = "sync";
		action->parent = controller;
		action->authen = true;
		action->authen_jump = "";
		action->content_type = "application/x-www-form-urlencoded";
		action->action_type = "";
		action->file_mapping = "";
		action->method = robotics::v3::mvc::http_method::POST;
		controller->actions["regex/sync"] = action;
	}
	controller->controller_name = "regex";
	robotics::v3::mvc::ico_controller::attach(controller);
}
static void func_8f63c1eea7d01bd9c97907a0fe615944() {
	rttr::registration::class_<class sync>("sync").constructor<>()().
		method("index",&sync::index).
		method("load",&sync::load)(rttr::default_arguments(int{},int{},std::string{},std::string{},std::string{},std::string{}),rttr::parameter_names("page","limit","type","enable","start_time","end_time"));
	std::shared_ptr<robotics::v3::mvc::controller> controller(new robotics::v3::mvc::controller());
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		action->action_name = "index";
		action->parent = controller;
		action->authen = true;
		action->authen_jump = "";
		action->content_type = "application/x-www-form-urlencoded";
		action->action_type = "";
		action->file_mapping = "sync/index.html";
		action->method = robotics::v3::mvc::http_method::GET;
		controller->actions["sync/index"] = action;
	}
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::Int;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::QUERY;
			argument->parameter_name_ = "page";
			action->arguments.push_back(argument);
		}
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::Int;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::QUERY;
			argument->parameter_name_ = "limit";
			action->arguments.push_back(argument);
		}
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::String;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::QUERY;
			argument->parameter_name_ = "type";
			action->arguments.push_back(argument);
		}
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::String;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::QUERY;
			argument->parameter_name_ = "enable";
			action->arguments.push_back(argument);
		}
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::String;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::QUERY;
			argument->parameter_name_ = "start_time";
			action->arguments.push_back(argument);
		}
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::String;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::QUERY;
			argument->parameter_name_ = "end_time";
			action->arguments.push_back(argument);
		}
		action->action_name = "load";
		action->parent = controller;
		action->authen = true;
		action->authen_jump = "";
		action->content_type = "application/x-www-form-urlencoded";
		action->action_type = "";
		action->file_mapping = "";
		action->method = robotics::v3::mvc::http_method::GET;
		controller->actions["sync/load"] = action;
	}
	controller->controller_name = "sync";
	robotics::v3::mvc::ico_controller::attach(controller);
}
static void func_f9dc422089e2b1884245732c9b790882() {
	rttr::registration::class_<class user>("user").constructor<>()().
		method("index",&user::index).
		method("load",&user::load)(rttr::default_arguments(int{},int{},std::string{},std::string{},std::string{}),rttr::parameter_names("page","limit","name","code","enable")).
		method("edit_view",&user::edit_view)(rttr::default_arguments(int{}),rttr::parameter_names("id")).
		method("edit",&user::edit)(rttr::default_arguments(web_user_config_info{}),rttr::parameter_names("value")).
		method("add_view",&user::add_view).
		method("add",&user::add)(rttr::default_arguments(web_user_config_info{}),rttr::parameter_names("value")).
		method("remove",&user::remove)(rttr::default_arguments(int{}),rttr::parameter_names("id"));
	std::shared_ptr<robotics::v3::mvc::controller> controller(new robotics::v3::mvc::controller());
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		action->action_name = "index";
		action->parent = controller;
		action->authen = true;
		action->authen_jump = "";
		action->content_type = "application/x-www-form-urlencoded";
		action->action_type = "";
		action->file_mapping = "user/index.html";
		action->method = robotics::v3::mvc::http_method::GET;
		controller->actions["user/index"] = action;
	}
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::Int;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::QUERY;
			argument->parameter_name_ = "page";
			action->arguments.push_back(argument);
		}
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::Int;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::QUERY;
			argument->parameter_name_ = "limit";
			action->arguments.push_back(argument);
		}
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::String;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::QUERY;
			argument->parameter_name_ = "name";
			action->arguments.push_back(argument);
		}
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::String;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::QUERY;
			argument->parameter_name_ = "code";
			action->arguments.push_back(argument);
		}
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::String;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::QUERY;
			argument->parameter_name_ = "enable";
			action->arguments.push_back(argument);
		}
		action->action_name = "load";
		action->parent = controller;
		action->authen = true;
		action->authen_jump = "";
		action->content_type = "application/x-www-form-urlencoded";
		action->action_type = "";
		action->file_mapping = "";
		action->method = robotics::v3::mvc::http_method::GET;
		controller->actions["user/load"] = action;
	}
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::Int;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::QUERY;
			argument->parameter_name_ = "id";
			action->arguments.push_back(argument);
		}
		action->action_name = "edit_view";
		action->parent = controller;
		action->authen = true;
		action->authen_jump = "";
		action->content_type = "application/x-www-form-urlencoded";
		action->action_type = "";
		action->file_mapping = "user/edit.html";
		action->method = robotics::v3::mvc::http_method::GET;
		controller->actions["user/edit_view"] = action;
	}
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::Json;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::BODY;
			argument->parameter_name_ = "";
			action->arguments.push_back(argument);
		}
		action->action_name = "edit";
		action->parent = controller;
		action->authen = true;
		action->authen_jump = "";
		action->content_type = "application/json";
		action->action_type = "";
		action->file_mapping = "";
		action->method = robotics::v3::mvc::http_method::POST;
		controller->actions["user/edit"] = action;
	}
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		action->action_name = "add_view";
		action->parent = controller;
		action->authen = true;
		action->authen_jump = "";
		action->content_type = "application/x-www-form-urlencoded";
		action->action_type = "";
		action->file_mapping = "user/add.html";
		action->method = robotics::v3::mvc::http_method::GET;
		controller->actions["user/add_view"] = action;
	}
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::Json;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::BODY;
			argument->parameter_name_ = "";
			action->arguments.push_back(argument);
		}
		action->action_name = "add";
		action->parent = controller;
		action->authen = true;
		action->authen_jump = "";
		action->content_type = "application/json";
		action->action_type = "";
		action->file_mapping = "";
		action->method = robotics::v3::mvc::http_method::POST;
		controller->actions["user/add"] = action;
	}
	{
		std::shared_ptr<robotics::v3::mvc::controller_action> action(new robotics::v3::mvc::controller_action());
		{
			std::shared_ptr<robotics::v3::mvc::action_argument> argument(new robotics::v3::mvc::action_argument());
			argument->argument_type_ = robotics::v3::mvc::argument_type::Int;
			argument->from_storage_type_ = robotics::v3::mvc::from_storage_type::BODY;
			argument->parameter_name_ = "id";
			action->arguments.push_back(argument);
		}
		action->action_name = "remove";
		action->parent = controller;
		action->authen = true;
		action->authen_jump = "";
		action->content_type = "application/x-www-form-urlencoded";
		action->action_type = "";
		action->file_mapping = "";
		action->method = robotics::v3::mvc::http_method::POST;
		controller->actions["user/remove"] = action;
	}
	controller->controller_name = "user";
	robotics::v3::mvc::ico_controller::attach(controller);
}
RTTR_REGISTRATION {
	func_3daaaff81c2ba66cd33fd2714715d58c();
	func_1ea0d1fed1530ef23d4381146deabe72();
	func_c848cc1ac1751ac1a6f07574bcbec8a9();
	func_ec540cefe487ce4b8dd638dd193d7798();
	func_990425bae940258d4deb4a49e335e129();
	func_3b5abe1a37cc06e34fc113c437ad1778();
	func_80caaa9c77662308fea8e02de061c75d();
	func_c30c684ce587ca28ac23f1d09448800f();
	func_4f8ad4e9233991e41e912427ffb37475();
	func_042f29de443861fc321844c31dde0bae();
	func_51e1f6760b5ace227b3786ab922e21b0();
	func_a44b76e0947b4f13d12754a079139374();
	func_f7cd3f2da2d2ef2dc5b636d7e412f6f1();
	func_ec5c84ba1d7c2aff0b24f55882793a39();
	func_8000641db92a90be3900cab4eee90ec4();
	func_3e13d70f540bf01b91d59c1ea891539a();
	func_9b895bea9da69bec088729b415373613();
	func_8f63c1eea7d01bd9c97907a0fe615944();
	func_f9dc422089e2b1884245732c9b790882();
}
