feat: super admin use sakai
This commit is contained in:
252
frontend/superadmin/src/service/CountryService.js
Executable file
252
frontend/superadmin/src/service/CountryService.js
Executable file
@@ -0,0 +1,252 @@
|
||||
export const CountryService = {
|
||||
getData() {
|
||||
return [
|
||||
{ name: 'Afghanistan', code: 'AF' },
|
||||
{ name: 'Albania', code: 'AL' },
|
||||
{ name: 'Algeria', code: 'DZ' },
|
||||
{ name: 'American Samoa', code: 'AS' },
|
||||
{ name: 'Andorra', code: 'AD' },
|
||||
{ name: 'Angola', code: 'AO' },
|
||||
{ name: 'Anguilla', code: 'AI' },
|
||||
{ name: 'Antarctica', code: 'AQ' },
|
||||
{ name: 'Antigua and Barbuda', code: 'AG' },
|
||||
{ name: 'Argentina', code: 'AR' },
|
||||
{ name: 'Armenia', code: 'AM' },
|
||||
{ name: 'Aruba', code: 'AW' },
|
||||
{ name: 'Australia', code: 'AU' },
|
||||
{ name: 'Austria', code: 'AT' },
|
||||
{ name: 'Azerbaijan', code: 'AZ' },
|
||||
{ name: 'Bahamas', code: 'BS' },
|
||||
{ name: 'Bahrain', code: 'BH' },
|
||||
{ name: 'Bangladesh', code: 'BD' },
|
||||
{ name: 'Barbados', code: 'BB' },
|
||||
{ name: 'Belarus', code: 'BY' },
|
||||
{ name: 'Belgium', code: 'BE' },
|
||||
{ name: 'Belize', code: 'BZ' },
|
||||
{ name: 'Benin', code: 'BJ' },
|
||||
{ name: 'Bermuda', code: 'BM' },
|
||||
{ name: 'Bhutan', code: 'BT' },
|
||||
{ name: 'Bolivia', code: 'BO' },
|
||||
{ name: 'Bosnia and Herzegovina', code: 'BA' },
|
||||
{ name: 'Botswana', code: 'BW' },
|
||||
{ name: 'Bouvet Island', code: 'BV' },
|
||||
{ name: 'Brazil', code: 'BR' },
|
||||
{ name: 'British Indian Ocean Territory', code: 'IO' },
|
||||
{ name: 'Brunei Darussalam', code: 'BN' },
|
||||
{ name: 'Bulgaria', code: 'BG' },
|
||||
{ name: 'Burkina Faso', code: 'BF' },
|
||||
{ name: 'Burundi', code: 'BI' },
|
||||
{ name: 'Cambodia', code: 'KH' },
|
||||
{ name: 'Cameroon', code: 'CM' },
|
||||
{ name: 'Canada', code: 'CA' },
|
||||
{ name: 'Cape Verde', code: 'CV' },
|
||||
{ name: 'Cayman Islands', code: 'KY' },
|
||||
{ name: 'Central African Republic', code: 'CF' },
|
||||
{ name: 'Chad', code: 'TD' },
|
||||
{ name: 'Chile', code: 'CL' },
|
||||
{ name: 'China', code: 'CN' },
|
||||
{ name: 'Christmas Island', code: 'CX' },
|
||||
{ name: 'Cocos (Keeling) Islands', code: 'CC' },
|
||||
{ name: 'Colombia', code: 'CO' },
|
||||
{ name: 'Comoros', code: 'KM' },
|
||||
{ name: 'Congo', code: 'CG' },
|
||||
{ name: 'Congo, The Democratic Republic of the', code: 'CD' },
|
||||
{ name: 'Cook Islands', code: 'CK' },
|
||||
{ name: 'Costa Rica', code: 'CR' },
|
||||
{ name: 'Cote D"Ivoire', code: 'CI' },
|
||||
{ name: 'Croatia', code: 'HR' },
|
||||
{ name: 'Cuba', code: 'CU' },
|
||||
{ name: 'Cyprus', code: 'CY' },
|
||||
{ name: 'Czech Republic', code: 'CZ' },
|
||||
{ name: 'Denmark', code: 'DK' },
|
||||
{ name: 'Djibouti', code: 'DJ' },
|
||||
{ name: 'Dominica', code: 'DM' },
|
||||
{ name: 'Dominican Republic', code: 'DO' },
|
||||
{ name: 'Ecuador', code: 'EC' },
|
||||
{ name: 'Egypt', code: 'EG' },
|
||||
{ name: 'El Salvador', code: 'SV' },
|
||||
{ name: 'Equatorial Guinea', code: 'GQ' },
|
||||
{ name: 'Eritrea', code: 'ER' },
|
||||
{ name: 'Estonia', code: 'EE' },
|
||||
{ name: 'Ethiopia', code: 'ET' },
|
||||
{ name: 'Falkland Islands (Malvinas)', code: 'FK' },
|
||||
{ name: 'Faroe Islands', code: 'FO' },
|
||||
{ name: 'Fiji', code: 'FJ' },
|
||||
{ name: 'Finland', code: 'FI' },
|
||||
{ name: 'France', code: 'FR' },
|
||||
{ name: 'French Guiana', code: 'GF' },
|
||||
{ name: 'French Polynesia', code: 'PF' },
|
||||
{ name: 'French Southern Territories', code: 'TF' },
|
||||
{ name: 'Gabon', code: 'GA' },
|
||||
{ name: 'Gambia', code: 'GM' },
|
||||
{ name: 'Georgia', code: 'GE' },
|
||||
{ name: 'Germany', code: 'DE' },
|
||||
{ name: 'Ghana', code: 'GH' },
|
||||
{ name: 'Gibraltar', code: 'GI' },
|
||||
{ name: 'Greece', code: 'GR' },
|
||||
{ name: 'Greenland', code: 'GL' },
|
||||
{ name: 'Grenada', code: 'GD' },
|
||||
{ name: 'Guadeloupe', code: 'GP' },
|
||||
{ name: 'Guam', code: 'GU' },
|
||||
{ name: 'Guatemala', code: 'GT' },
|
||||
{ name: 'Guernsey', code: 'GG' },
|
||||
{ name: 'Guinea', code: 'GN' },
|
||||
{ name: 'Guinea-Bissau', code: 'GW' },
|
||||
{ name: 'Guyana', code: 'GY' },
|
||||
{ name: 'Haiti', code: 'HT' },
|
||||
{ name: 'Heard Island and Mcdonald Islands', code: 'HM' },
|
||||
{ name: 'Holy See (Vatican City State)', code: 'VA' },
|
||||
{ name: 'Honduras', code: 'HN' },
|
||||
{ name: 'Hong Kong', code: 'HK' },
|
||||
{ name: 'Hungary', code: 'HU' },
|
||||
{ name: 'Iceland', code: 'IS' },
|
||||
{ name: 'India', code: 'IN' },
|
||||
{ name: 'Indonesia', code: 'ID' },
|
||||
{ name: 'Iran, Islamic Republic Of', code: 'IR' },
|
||||
{ name: 'Iraq', code: 'IQ' },
|
||||
{ name: 'Ireland', code: 'IE' },
|
||||
{ name: 'Isle of Man', code: 'IM' },
|
||||
{ name: 'Israel', code: 'IL' },
|
||||
{ name: 'Italy', code: 'IT' },
|
||||
{ name: 'Jamaica', code: 'JM' },
|
||||
{ name: 'Japan', code: 'JP' },
|
||||
{ name: 'Jersey', code: 'JE' },
|
||||
{ name: 'Jordan', code: 'JO' },
|
||||
{ name: 'Kazakhstan', code: 'KZ' },
|
||||
{ name: 'Kenya', code: 'KE' },
|
||||
{ name: 'Kiribati', code: 'KI' },
|
||||
{ name: 'Korea, Democratic People"S Republic of', code: 'KP' },
|
||||
{ name: 'Korea, Republic of', code: 'KR' },
|
||||
{ name: 'Kuwait', code: 'KW' },
|
||||
{ name: 'Kyrgyzstan', code: 'KG' },
|
||||
{ name: 'Lao People"S Democratic Republic', code: 'LA' },
|
||||
{ name: 'Latvia', code: 'LV' },
|
||||
{ name: 'Lebanon', code: 'LB' },
|
||||
{ name: 'Lesotho', code: 'LS' },
|
||||
{ name: 'Liberia', code: 'LR' },
|
||||
{ name: 'Libyan Arab Jamahiriya', code: 'LY' },
|
||||
{ name: 'Liechtenstein', code: 'LI' },
|
||||
{ name: 'Lithuania', code: 'LT' },
|
||||
{ name: 'Luxembourg', code: 'LU' },
|
||||
{ name: 'Macao', code: 'MO' },
|
||||
{ name: 'Macedonia, The Former Yugoslav Republic of', code: 'MK' },
|
||||
{ name: 'Madagascar', code: 'MG' },
|
||||
{ name: 'Malawi', code: 'MW' },
|
||||
{ name: 'Malaysia', code: 'MY' },
|
||||
{ name: 'Maldives', code: 'MV' },
|
||||
{ name: 'Mali', code: 'ML' },
|
||||
{ name: 'Malta', code: 'MT' },
|
||||
{ name: 'Marshall Islands', code: 'MH' },
|
||||
{ name: 'Martinique', code: 'MQ' },
|
||||
{ name: 'Mauritania', code: 'MR' },
|
||||
{ name: 'Mauritius', code: 'MU' },
|
||||
{ name: 'Mayotte', code: 'YT' },
|
||||
{ name: 'Mexico', code: 'MX' },
|
||||
{ name: 'Micronesia, Federated States of', code: 'FM' },
|
||||
{ name: 'Moldova, Republic of', code: 'MD' },
|
||||
{ name: 'Monaco', code: 'MC' },
|
||||
{ name: 'Mongolia', code: 'MN' },
|
||||
{ name: 'Montserrat', code: 'MS' },
|
||||
{ name: 'Morocco', code: 'MA' },
|
||||
{ name: 'Mozambique', code: 'MZ' },
|
||||
{ name: 'Myanmar', code: 'MM' },
|
||||
{ name: 'Namibia', code: 'NA' },
|
||||
{ name: 'Nauru', code: 'NR' },
|
||||
{ name: 'Nepal', code: 'NP' },
|
||||
{ name: 'Netherlands', code: 'NL' },
|
||||
{ name: 'Netherlands Antilles', code: 'AN' },
|
||||
{ name: 'New Caledonia', code: 'NC' },
|
||||
{ name: 'New Zealand', code: 'NZ' },
|
||||
{ name: 'Nicaragua', code: 'NI' },
|
||||
{ name: 'Niger', code: 'NE' },
|
||||
{ name: 'Nigeria', code: 'NG' },
|
||||
{ name: 'Niue', code: 'NU' },
|
||||
{ name: 'Norfolk Island', code: 'NF' },
|
||||
{ name: 'Northern Mariana Islands', code: 'MP' },
|
||||
{ name: 'Norway', code: 'NO' },
|
||||
{ name: 'Oman', code: 'OM' },
|
||||
{ name: 'Pakistan', code: 'PK' },
|
||||
{ name: 'Palau', code: 'PW' },
|
||||
{ name: 'Palestinian Territory, Occupied', code: 'PS' },
|
||||
{ name: 'Panama', code: 'PA' },
|
||||
{ name: 'Papua New Guinea', code: 'PG' },
|
||||
{ name: 'Paraguay', code: 'PY' },
|
||||
{ name: 'Peru', code: 'PE' },
|
||||
{ name: 'Philippines', code: 'PH' },
|
||||
{ name: 'Pitcairn', code: 'PN' },
|
||||
{ name: 'Poland', code: 'PL' },
|
||||
{ name: 'Portugal', code: 'PT' },
|
||||
{ name: 'Puerto Rico', code: 'PR' },
|
||||
{ name: 'Qatar', code: 'QA' },
|
||||
{ name: 'Reunion', code: 'RE' },
|
||||
{ name: 'Romania', code: 'RO' },
|
||||
{ name: 'Russian Federation', code: 'RU' },
|
||||
{ name: 'RWANDA', code: 'RW' },
|
||||
{ name: 'Saint Helena', code: 'SH' },
|
||||
{ name: 'Saint Kitts and Nevis', code: 'KN' },
|
||||
{ name: 'Saint Lucia', code: 'LC' },
|
||||
{ name: 'Saint Pierre and Miquelon', code: 'PM' },
|
||||
{ name: 'Saint Vincent and the Grenadines', code: 'VC' },
|
||||
{ name: 'Samoa', code: 'WS' },
|
||||
{ name: 'San Marino', code: 'SM' },
|
||||
{ name: 'Sao Tome and Principe', code: 'ST' },
|
||||
{ name: 'Saudi Arabia', code: 'SA' },
|
||||
{ name: 'Senegal', code: 'SN' },
|
||||
{ name: 'Serbia and Montenegro', code: 'CS' },
|
||||
{ name: 'Seychelles', code: 'SC' },
|
||||
{ name: 'Sierra Leone', code: 'SL' },
|
||||
{ name: 'Singapore', code: 'SG' },
|
||||
{ name: 'Slovakia', code: 'SK' },
|
||||
{ name: 'Slovenia', code: 'SI' },
|
||||
{ name: 'Solomon Islands', code: 'SB' },
|
||||
{ name: 'Somalia', code: 'SO' },
|
||||
{ name: 'South Africa', code: 'ZA' },
|
||||
{ name: 'South Georgia and the South Sandwich Islands', code: 'GS' },
|
||||
{ name: 'Spain', code: 'ES' },
|
||||
{ name: 'Sri Lanka', code: 'LK' },
|
||||
{ name: 'Sudan', code: 'SD' },
|
||||
{ name: 'Suriname', code: 'SR' },
|
||||
{ name: 'Svalbard and Jan Mayen', code: 'SJ' },
|
||||
{ name: 'Swaziland', code: 'SZ' },
|
||||
{ name: 'Sweden', code: 'SE' },
|
||||
{ name: 'Switzerland', code: 'CH' },
|
||||
{ name: 'Syrian Arab Republic', code: 'SY' },
|
||||
{ name: 'Taiwan, Province of China', code: 'TW' },
|
||||
{ name: 'Tajikistan', code: 'TJ' },
|
||||
{ name: 'Tanzania, United Republic of', code: 'TZ' },
|
||||
{ name: 'Thailand', code: 'TH' },
|
||||
{ name: 'Timor-Leste', code: 'TL' },
|
||||
{ name: 'Togo', code: 'TG' },
|
||||
{ name: 'Tokelau', code: 'TK' },
|
||||
{ name: 'Tonga', code: 'TO' },
|
||||
{ name: 'Trinidad and Tobago', code: 'TT' },
|
||||
{ name: 'Tunisia', code: 'TN' },
|
||||
{ name: 'Turkey', code: 'TR' },
|
||||
{ name: 'Turkmenistan', code: 'TM' },
|
||||
{ name: 'Turks and Caicos Islands', code: 'TC' },
|
||||
{ name: 'Tuvalu', code: 'TV' },
|
||||
{ name: 'Uganda', code: 'UG' },
|
||||
{ name: 'Ukraine', code: 'UA' },
|
||||
{ name: 'United Arab Emirates', code: 'AE' },
|
||||
{ name: 'United Kingdom', code: 'GB' },
|
||||
{ name: 'United States', code: 'US' },
|
||||
{ name: 'United States Minor Outlying Islands', code: 'UM' },
|
||||
{ name: 'Uruguay', code: 'UY' },
|
||||
{ name: 'Uzbekistan', code: 'UZ' },
|
||||
{ name: 'Vanuatu', code: 'VU' },
|
||||
{ name: 'Venezuela', code: 'VE' },
|
||||
{ name: 'Viet Nam', code: 'VN' },
|
||||
{ name: 'Virgin Islands, British', code: 'VG' },
|
||||
{ name: 'Virgin Islands, U.S.', code: 'VI' },
|
||||
{ name: 'Wallis and Futuna', code: 'WF' },
|
||||
{ name: 'Western Sahara', code: 'EH' },
|
||||
{ name: 'Yemen', code: 'YE' },
|
||||
{ name: 'Zambia', code: 'ZM' },
|
||||
{ name: 'Zimbabwe', code: 'ZW' }
|
||||
];
|
||||
},
|
||||
|
||||
getCountries() {
|
||||
return Promise.resolve(this.getData());
|
||||
}
|
||||
};
|
||||
9032
frontend/superadmin/src/service/CustomerService.js
Executable file
9032
frontend/superadmin/src/service/CustomerService.js
Executable file
File diff suppressed because it is too large
Load Diff
431
frontend/superadmin/src/service/NodeService.js
Executable file
431
frontend/superadmin/src/service/NodeService.js
Executable file
@@ -0,0 +1,431 @@
|
||||
export const NodeService = {
|
||||
getTreeNodesData() {
|
||||
return [
|
||||
{
|
||||
key: '0',
|
||||
label: 'Documents',
|
||||
data: 'Documents Folder',
|
||||
icon: 'pi pi-fw pi-inbox',
|
||||
children: [
|
||||
{
|
||||
key: '0-0',
|
||||
label: 'Work',
|
||||
data: 'Work Folder',
|
||||
icon: 'pi pi-fw pi-cog',
|
||||
children: [
|
||||
{ key: '0-0-0', label: 'Expenses.doc', icon: 'pi pi-fw pi-file', data: 'Expenses Document' },
|
||||
{ key: '0-0-1', label: 'Resume.doc', icon: 'pi pi-fw pi-file', data: 'Resume Document' }
|
||||
]
|
||||
},
|
||||
{
|
||||
key: '0-1',
|
||||
label: 'Home',
|
||||
data: 'Home Folder',
|
||||
icon: 'pi pi-fw pi-home',
|
||||
children: [{ key: '0-1-0', label: 'Invoices.txt', icon: 'pi pi-fw pi-file', data: 'Invoices for this month' }]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
key: '1',
|
||||
label: 'Events',
|
||||
data: 'Events Folder',
|
||||
icon: 'pi pi-fw pi-calendar',
|
||||
children: [
|
||||
{ key: '1-0', label: 'Meeting', icon: 'pi pi-fw pi-calendar-plus', data: 'Meeting' },
|
||||
{ key: '1-1', label: 'Product Launch', icon: 'pi pi-fw pi-calendar-plus', data: 'Product Launch' },
|
||||
{ key: '1-2', label: 'Report Review', icon: 'pi pi-fw pi-calendar-plus', data: 'Report Review' }
|
||||
]
|
||||
},
|
||||
{
|
||||
key: '2',
|
||||
label: 'Movies',
|
||||
data: 'Movies Folder',
|
||||
icon: 'pi pi-fw pi-star-fill',
|
||||
children: [
|
||||
{
|
||||
key: '2-0',
|
||||
icon: 'pi pi-fw pi-star-fill',
|
||||
label: 'Al Pacino',
|
||||
data: 'Pacino Movies',
|
||||
children: [
|
||||
{ key: '2-0-0', label: 'Scarface', icon: 'pi pi-fw pi-video', data: 'Scarface Movie' },
|
||||
{ key: '2-0-1', label: 'Serpico', icon: 'pi pi-fw pi-video', data: 'Serpico Movie' }
|
||||
]
|
||||
},
|
||||
{
|
||||
key: '2-1',
|
||||
label: 'Robert De Niro',
|
||||
icon: 'pi pi-fw pi-star-fill',
|
||||
data: 'De Niro Movies',
|
||||
children: [
|
||||
{ key: '2-1-0', label: 'Goodfellas', icon: 'pi pi-fw pi-video', data: 'Goodfellas Movie' },
|
||||
{ key: '2-1-1', label: 'Untouchables', icon: 'pi pi-fw pi-video', data: 'Untouchables Movie' }
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
];
|
||||
},
|
||||
|
||||
getTreeTableNodesData() {
|
||||
return [
|
||||
{
|
||||
key: '0',
|
||||
data: {
|
||||
name: 'Applications',
|
||||
size: '100kb',
|
||||
type: 'Folder'
|
||||
},
|
||||
children: [
|
||||
{
|
||||
key: '0-0',
|
||||
data: {
|
||||
name: 'Vue',
|
||||
size: '25kb',
|
||||
type: 'Folder'
|
||||
},
|
||||
children: [
|
||||
{
|
||||
key: '0-0-0',
|
||||
data: {
|
||||
name: 'vue.app',
|
||||
size: '10kb',
|
||||
type: 'Application'
|
||||
}
|
||||
},
|
||||
{
|
||||
key: '0-0-1',
|
||||
data: {
|
||||
name: 'native.app',
|
||||
size: '10kb',
|
||||
type: 'Application'
|
||||
}
|
||||
},
|
||||
{
|
||||
key: '0-0-2',
|
||||
data: {
|
||||
name: 'mobile.app',
|
||||
size: '5kb',
|
||||
type: 'Application'
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
key: '0-1',
|
||||
data: {
|
||||
name: 'editor.app',
|
||||
size: '25kb',
|
||||
type: 'Application'
|
||||
}
|
||||
},
|
||||
{
|
||||
key: '0-2',
|
||||
data: {
|
||||
name: 'settings.app',
|
||||
size: '50kb',
|
||||
type: 'Application'
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
key: '1',
|
||||
data: {
|
||||
name: 'Cloud',
|
||||
size: '20kb',
|
||||
type: 'Folder'
|
||||
},
|
||||
children: [
|
||||
{
|
||||
key: '1-0',
|
||||
data: {
|
||||
name: 'backup-1.zip',
|
||||
size: '10kb',
|
||||
type: 'Zip'
|
||||
}
|
||||
},
|
||||
{
|
||||
key: '1-1',
|
||||
data: {
|
||||
name: 'backup-2.zip',
|
||||
size: '10kb',
|
||||
type: 'Zip'
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
key: '2',
|
||||
data: {
|
||||
name: 'Desktop',
|
||||
size: '150kb',
|
||||
type: 'Folder'
|
||||
},
|
||||
children: [
|
||||
{
|
||||
key: '2-0',
|
||||
data: {
|
||||
name: 'note-meeting.txt',
|
||||
size: '50kb',
|
||||
type: 'Text'
|
||||
}
|
||||
},
|
||||
{
|
||||
key: '2-1',
|
||||
data: {
|
||||
name: 'note-todo.txt',
|
||||
size: '100kb',
|
||||
type: 'Text'
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
key: '3',
|
||||
data: {
|
||||
name: 'Documents',
|
||||
size: '75kb',
|
||||
type: 'Folder'
|
||||
},
|
||||
children: [
|
||||
{
|
||||
key: '3-0',
|
||||
data: {
|
||||
name: 'Work',
|
||||
size: '55kb',
|
||||
type: 'Folder'
|
||||
},
|
||||
children: [
|
||||
{
|
||||
key: '3-0-0',
|
||||
data: {
|
||||
name: 'Expenses.doc',
|
||||
size: '30kb',
|
||||
type: 'Document'
|
||||
}
|
||||
},
|
||||
{
|
||||
key: '3-0-1',
|
||||
data: {
|
||||
name: 'Resume.doc',
|
||||
size: '25kb',
|
||||
type: 'Resume'
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
key: '3-1',
|
||||
data: {
|
||||
name: 'Home',
|
||||
size: '20kb',
|
||||
type: 'Folder'
|
||||
},
|
||||
children: [
|
||||
{
|
||||
key: '3-1-0',
|
||||
data: {
|
||||
name: 'Invoices',
|
||||
size: '20kb',
|
||||
type: 'Text'
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
key: '4',
|
||||
data: {
|
||||
name: 'Downloads',
|
||||
size: '25kb',
|
||||
type: 'Folder'
|
||||
},
|
||||
children: [
|
||||
{
|
||||
key: '4-0',
|
||||
data: {
|
||||
name: 'Spanish',
|
||||
size: '10kb',
|
||||
type: 'Folder'
|
||||
},
|
||||
children: [
|
||||
{
|
||||
key: '4-0-0',
|
||||
data: {
|
||||
name: 'tutorial-a1.txt',
|
||||
size: '5kb',
|
||||
type: 'Text'
|
||||
}
|
||||
},
|
||||
{
|
||||
key: '4-0-1',
|
||||
data: {
|
||||
name: 'tutorial-a2.txt',
|
||||
size: '5kb',
|
||||
type: 'Text'
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
key: '4-1',
|
||||
data: {
|
||||
name: 'Travel',
|
||||
size: '15kb',
|
||||
type: 'Text'
|
||||
},
|
||||
children: [
|
||||
{
|
||||
key: '4-1-0',
|
||||
data: {
|
||||
name: 'Hotel.pdf',
|
||||
size: '10kb',
|
||||
type: 'PDF'
|
||||
}
|
||||
},
|
||||
{
|
||||
key: '4-1-1',
|
||||
data: {
|
||||
name: 'Flight.pdf',
|
||||
size: '5kb',
|
||||
type: 'PDF'
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
key: '5',
|
||||
data: {
|
||||
name: 'Main',
|
||||
size: '50kb',
|
||||
type: 'Folder'
|
||||
},
|
||||
children: [
|
||||
{
|
||||
key: '5-0',
|
||||
data: {
|
||||
name: 'bin',
|
||||
size: '50kb',
|
||||
type: 'Link'
|
||||
}
|
||||
},
|
||||
{
|
||||
key: '5-1',
|
||||
data: {
|
||||
name: 'etc',
|
||||
size: '100kb',
|
||||
type: 'Link'
|
||||
}
|
||||
},
|
||||
{
|
||||
key: '5-2',
|
||||
data: {
|
||||
name: 'var',
|
||||
size: '100kb',
|
||||
type: 'Link'
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
key: '6',
|
||||
data: {
|
||||
name: 'Other',
|
||||
size: '5kb',
|
||||
type: 'Folder'
|
||||
},
|
||||
children: [
|
||||
{
|
||||
key: '6-0',
|
||||
data: {
|
||||
name: 'todo.txt',
|
||||
size: '3kb',
|
||||
type: 'Text'
|
||||
}
|
||||
},
|
||||
{
|
||||
key: '6-1',
|
||||
data: {
|
||||
name: 'logo.png',
|
||||
size: '2kb',
|
||||
type: 'Picture'
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
key: '7',
|
||||
data: {
|
||||
name: 'Pictures',
|
||||
size: '150kb',
|
||||
type: 'Folder'
|
||||
},
|
||||
children: [
|
||||
{
|
||||
key: '7-0',
|
||||
data: {
|
||||
name: 'barcelona.jpg',
|
||||
size: '90kb',
|
||||
type: 'Picture'
|
||||
}
|
||||
},
|
||||
{
|
||||
key: '7-1',
|
||||
data: {
|
||||
name: 'primevue.png',
|
||||
size: '30kb',
|
||||
type: 'Picture'
|
||||
}
|
||||
},
|
||||
{
|
||||
key: '7-2',
|
||||
data: {
|
||||
name: 'prime.jpg',
|
||||
size: '30kb',
|
||||
type: 'Picture'
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
key: '8',
|
||||
data: {
|
||||
name: 'Videos',
|
||||
size: '1500kb',
|
||||
type: 'Folder'
|
||||
},
|
||||
children: [
|
||||
{
|
||||
key: '8-0',
|
||||
data: {
|
||||
name: 'primefaces.mkv',
|
||||
size: '1000kb',
|
||||
type: 'Video'
|
||||
}
|
||||
},
|
||||
{
|
||||
key: '8-1',
|
||||
data: {
|
||||
name: 'intro.avi',
|
||||
size: '500kb',
|
||||
type: 'Video'
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
];
|
||||
},
|
||||
|
||||
getTreeTableNodes() {
|
||||
return Promise.resolve(this.getTreeTableNodesData());
|
||||
},
|
||||
|
||||
getTreeNodes() {
|
||||
return Promise.resolve(this.getTreeNodesData());
|
||||
}
|
||||
};
|
||||
100
frontend/superadmin/src/service/PhotoService.js
Executable file
100
frontend/superadmin/src/service/PhotoService.js
Executable file
@@ -0,0 +1,100 @@
|
||||
export const PhotoService = {
|
||||
getData() {
|
||||
return [
|
||||
{
|
||||
itemImageSrc: 'https://primefaces.org/cdn/primevue/images/galleria/galleria1.jpg',
|
||||
thumbnailImageSrc: 'https://primefaces.org/cdn/primevue/images/galleria/galleria1s.jpg',
|
||||
alt: 'Description for Image 1',
|
||||
title: 'Title 1'
|
||||
},
|
||||
{
|
||||
itemImageSrc: 'https://primefaces.org/cdn/primevue/images/galleria/galleria2.jpg',
|
||||
thumbnailImageSrc: 'https://primefaces.org/cdn/primevue/images/galleria/galleria2s.jpg',
|
||||
alt: 'Description for Image 2',
|
||||
title: 'Title 2'
|
||||
},
|
||||
{
|
||||
itemImageSrc: 'https://primefaces.org/cdn/primevue/images/galleria/galleria3.jpg',
|
||||
thumbnailImageSrc: 'https://primefaces.org/cdn/primevue/images/galleria/galleria3s.jpg',
|
||||
alt: 'Description for Image 3',
|
||||
title: 'Title 3'
|
||||
},
|
||||
{
|
||||
itemImageSrc: 'https://primefaces.org/cdn/primevue/images/galleria/galleria4.jpg',
|
||||
thumbnailImageSrc: 'https://primefaces.org/cdn/primevue/images/galleria/galleria4s.jpg',
|
||||
alt: 'Description for Image 4',
|
||||
title: 'Title 4'
|
||||
},
|
||||
{
|
||||
itemImageSrc: 'https://primefaces.org/cdn/primevue/images/galleria/galleria5.jpg',
|
||||
thumbnailImageSrc: 'https://primefaces.org/cdn/primevue/images/galleria/galleria5s.jpg',
|
||||
alt: 'Description for Image 5',
|
||||
title: 'Title 5'
|
||||
},
|
||||
{
|
||||
itemImageSrc: 'https://primefaces.org/cdn/primevue/images/galleria/galleria6.jpg',
|
||||
thumbnailImageSrc: 'https://primefaces.org/cdn/primevue/images/galleria/galleria6s.jpg',
|
||||
alt: 'Description for Image 6',
|
||||
title: 'Title 6'
|
||||
},
|
||||
{
|
||||
itemImageSrc: 'https://primefaces.org/cdn/primevue/images/galleria/galleria7.jpg',
|
||||
thumbnailImageSrc: 'https://primefaces.org/cdn/primevue/images/galleria/galleria7s.jpg',
|
||||
alt: 'Description for Image 7',
|
||||
title: 'Title 7'
|
||||
},
|
||||
{
|
||||
itemImageSrc: 'https://primefaces.org/cdn/primevue/images/galleria/galleria8.jpg',
|
||||
thumbnailImageSrc: 'https://primefaces.org/cdn/primevue/images/galleria/galleria8s.jpg',
|
||||
alt: 'Description for Image 8',
|
||||
title: 'Title 8'
|
||||
},
|
||||
{
|
||||
itemImageSrc: 'https://primefaces.org/cdn/primevue/images/galleria/galleria9.jpg',
|
||||
thumbnailImageSrc: 'https://primefaces.org/cdn/primevue/images/galleria/galleria9s.jpg',
|
||||
alt: 'Description for Image 9',
|
||||
title: 'Title 9'
|
||||
},
|
||||
{
|
||||
itemImageSrc: 'https://primefaces.org/cdn/primevue/images/galleria/galleria10.jpg',
|
||||
thumbnailImageSrc: 'https://primefaces.org/cdn/primevue/images/galleria/galleria10s.jpg',
|
||||
alt: 'Description for Image 10',
|
||||
title: 'Title 10'
|
||||
},
|
||||
{
|
||||
itemImageSrc: 'https://primefaces.org/cdn/primevue/images/galleria/galleria11.jpg',
|
||||
thumbnailImageSrc: 'https://primefaces.org/cdn/primevue/images/galleria/galleria11s.jpg',
|
||||
alt: 'Description for Image 11',
|
||||
title: 'Title 11'
|
||||
},
|
||||
{
|
||||
itemImageSrc: 'https://primefaces.org/cdn/primevue/images/galleria/galleria12.jpg',
|
||||
thumbnailImageSrc: 'https://primefaces.org/cdn/primevue/images/galleria/galleria12s.jpg',
|
||||
alt: 'Description for Image 12',
|
||||
title: 'Title 12'
|
||||
},
|
||||
{
|
||||
itemImageSrc: 'https://primefaces.org/cdn/primevue/images/galleria/galleria13.jpg',
|
||||
thumbnailImageSrc: 'https://primefaces.org/cdn/primevue/images/galleria/galleria13s.jpg',
|
||||
alt: 'Description for Image 13',
|
||||
title: 'Title 13'
|
||||
},
|
||||
{
|
||||
itemImageSrc: 'https://primefaces.org/cdn/primevue/images/galleria/galleria14.jpg',
|
||||
thumbnailImageSrc: 'https://primefaces.org/cdn/primevue/images/galleria/galleria14s.jpg',
|
||||
alt: 'Description for Image 14',
|
||||
title: 'Title 14'
|
||||
},
|
||||
{
|
||||
itemImageSrc: 'https://primefaces.org/cdn/primevue/images/galleria/galleria15.jpg',
|
||||
thumbnailImageSrc: 'https://primefaces.org/cdn/primevue/images/galleria/galleria15s.jpg',
|
||||
alt: 'Description for Image 15',
|
||||
title: 'Title 15'
|
||||
}
|
||||
];
|
||||
},
|
||||
|
||||
getImages() {
|
||||
return Promise.resolve(this.getData());
|
||||
}
|
||||
};
|
||||
1220
frontend/superadmin/src/service/ProductService.js
Normal file
1220
frontend/superadmin/src/service/ProductService.js
Normal file
File diff suppressed because it is too large
Load Diff
25
frontend/superadmin/src/service/TenantService.js
Normal file
25
frontend/superadmin/src/service/TenantService.js
Normal file
@@ -0,0 +1,25 @@
|
||||
import { requestJson } from './apiClient';
|
||||
|
||||
function normalizeItems(items) {
|
||||
if (Array.isArray(items)) return items;
|
||||
if (items && typeof items === 'object') return [items];
|
||||
return [];
|
||||
}
|
||||
|
||||
export const TenantService = {
|
||||
async listTenants({ page, limit, name, sortField, sortOrder } = {}) {
|
||||
const query = { page, limit, name };
|
||||
if (sortField && sortOrder) {
|
||||
if (sortOrder === 1) query.asc = sortField;
|
||||
if (sortOrder === -1) query.desc = sortField;
|
||||
}
|
||||
|
||||
const data = await requestJson('/super/v1/tenants', { query });
|
||||
return {
|
||||
page: data?.page ?? page ?? 1,
|
||||
limit: data?.limit ?? limit ?? 10,
|
||||
total: data?.total ?? 0,
|
||||
items: normalizeItems(data?.items)
|
||||
};
|
||||
}
|
||||
};
|
||||
52
frontend/superadmin/src/service/apiClient.js
Normal file
52
frontend/superadmin/src/service/apiClient.js
Normal file
@@ -0,0 +1,52 @@
|
||||
function buildUrl(baseUrl, path, query) {
|
||||
const trimmedBaseUrl = (baseUrl ?? '').replace(/\/+$/, '');
|
||||
const trimmedPath = `/${String(path ?? '').replace(/^\/+/, '')}`;
|
||||
const url = new URL(`${trimmedBaseUrl}${trimmedPath}`, window.location.origin);
|
||||
|
||||
if (query) {
|
||||
Object.entries(query).forEach(([key, value]) => {
|
||||
if (value === undefined || value === null || value === '') return;
|
||||
url.searchParams.set(key, String(value));
|
||||
});
|
||||
}
|
||||
|
||||
return url;
|
||||
}
|
||||
|
||||
export function getApiBaseUrl() {
|
||||
return (import.meta.env.VITE_API_BASE_URL ?? '').trim();
|
||||
}
|
||||
|
||||
export function getAuthToken() {
|
||||
return localStorage.getItem('super_token') || localStorage.getItem('token') || '';
|
||||
}
|
||||
|
||||
export async function requestJson(path, { method = 'GET', query, body, headers } = {}) {
|
||||
const url = buildUrl(getApiBaseUrl(), path, query);
|
||||
const token = getAuthToken();
|
||||
const authHeaderValue = token ? (token.startsWith('Bearer ') ? token : `Bearer ${token}`) : '';
|
||||
|
||||
const response = await fetch(url.toString(), {
|
||||
method,
|
||||
headers: {
|
||||
...(body ? { 'Content-Type': 'application/json' } : {}),
|
||||
...(authHeaderValue ? { Authorization: authHeaderValue } : {}),
|
||||
...(headers ?? {})
|
||||
},
|
||||
body: body ? JSON.stringify(body) : undefined
|
||||
});
|
||||
|
||||
const contentType = response.headers.get('content-type') ?? '';
|
||||
const isJson = contentType.toLowerCase().includes('application/json');
|
||||
const payload = isJson ? await response.json().catch(() => null) : await response.text().catch(() => '');
|
||||
|
||||
if (!response.ok) {
|
||||
const message = typeof payload === 'string' ? payload : payload?.message || payload?.error || response.statusText;
|
||||
const error = new Error(message || `Request failed: ${response.status}`);
|
||||
error.status = response.status;
|
||||
error.payload = payload;
|
||||
throw error;
|
||||
}
|
||||
|
||||
return payload;
|
||||
}
|
||||
Reference in New Issue
Block a user