ΠΡΠΎ ΡΡΠ°ΡΡΠΎΠ²ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠ΅ΡΡΠΎΠ²ΠΎΠ³ΠΎ Π·Π°Π΄Π°Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ WG Forge Platform Front-End, Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π·Π°Π΄Π°Π½ΠΈΠ΅.
β οΈ Π£Π±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ Π² Π²Π°ΡΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ node.js ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ - https://nodejs.org/en/- Π‘Π΄Π΅Π»Π°ΠΉΡΠ΅ fork ΠΏΡΠΎΠ΅ΠΊΡΠ°; ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π·Π΄Π΅ΡΡ: https://help.github.com/articles/about-forks/
- Π‘ΠΊΠ»ΠΎΠ½ΠΈΡΡΠΉΡΠ΅ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΡΠ²ΠΎΠ΅Π³ΠΎ ΡΠΎΡΠΊΠ°:
git clone https://github.com/<username>/wg_forge_frontend.git
- ΠΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π² ΠΊΠΎΡΠ½Π΅Π²ΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ (ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΎΠ± npm ΠΈ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ·Π½Π°ΡΡ Π½Π° ΡΠ°ΠΉΡΠ΅: https://docs.npmjs.com/):
npm install
- ΠΠ»Ρ Π·Π°ΠΏΡΡΠΊΠ° ΠΏΡΠΎΠ΅ΠΊΡΠ° Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
npm start
ΠΠ΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ Π²ΡΠ²ΠΎΠ΄ Π² ΡΠ°Π±Π»ΠΈΡΠ½ΠΎΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ
o Π·Π°ΠΊΠ°Π·Π°Ρ
, ΠΊΠΎΡΠΎΡΡΠ΅ Ρ
ΡΠ°Π½ΡΡΡΡ Π² ΡΠ°ΠΉΠ»Π΅ orders.json
, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠ²ΡΠ·Π°Π½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅, ΠΊΠΎΡΠΎΡΠ°Ρ Ρ
ΡΠ°Π½ΠΈΡΡΡ Π² ΡΠ°ΠΉΠ»Π°Ρ
users.json
ΠΈ companies.json
Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ data
Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ.
Π ΡΠ°ΠΉΠ»Π΅ orders.json
Ρ
ΡΠ°Π½ΠΈΡΡΡ ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ Π² JSON ΠΌΠ°ΡΡΠΈΠ² Π·Π°ΠΊΠ°Π·ΠΎΠ², ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ
ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΡΡ
Π΅ΠΌΠ΅:
{
"id": 11, // ΠΏΠΎΡΡΠ΄ΠΊΠΎΠ²ΡΠΉ Π½ΠΎΠΌΠ΅Ρ Π·Π°ΠΏΠΈΡΠΈ
"transaction_id": "8292e007-4682-idkfa-a404-eed9662fa5cc", // ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ Π½ΠΎΠΌΠ΅Ρ Π·Π°ΠΊΠ°Π·Π°
"created_at": "1513808027", // Π²ΡΠ΅ΠΌΠ΅Π½Π½Γ‘Ρ ΠΌΠ΅ΡΠΊΠ° ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π·Π°ΠΊΠ°Π·Π° Π² ΡΠΎΡΠΌΠ°ΡΠ΅ unix
"user_id": 15, // ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ
"total": "453.47", // ΠΎΠ±ΡΠ°Ρ ΡΡΠΌΠΌΠ° Π·Π°ΠΊΠ°Π·Π° Π² Π±Π°Π·ΠΎΠ²ΠΎΠΉ Π²Π°Π»ΡΡΠ΅ (USD)
"card_type": "diners-club-carte-blanche", // ΡΠΈΠΏ ΠΊΠ°ΡΡΡ ΠΎΠΏΠ»Π°ΡΡ
"card_number": "30526651224733", // Π½ΠΎΠΌΠ΅Ρ ΠΊΠ°ΡΡΡ ΠΎΠΏΠ»Π°ΡΡ
"order_country": "IS", // ΡΡΡΠ°Π½Π°, ΠΈΠ· ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠ΄Π΅Π»Π°Π½ Π·Π°ΠΊΠ°Π·
"order_ip": "211.145.96.59" // IP-Π°Π΄ΡΠ΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΡΠ΄Π΅Π»Π°Π½ Π·Π°ΠΊΠ°Π·
}
ΠΏΠΎΠ»Π΅ | ΡΠΈΠΏ | ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ |
---|---|---|
id | integer | ΠΏΠΎΡΡΠ΄ΠΊΠΎΠ²ΡΠΉ Π½ΠΎΠΌΠ΅Ρ Π·Π°ΠΏΠΈΡΠΈ |
transaction_id | string | ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ Π½ΠΎΠΌΠ΅Ρ Π·Π°ΠΊΠ°Π·Π° |
created_at | string | Π²ΡΠ΅ΠΌΠ΅Π½Π½Γ‘Ρ ΠΌΠ΅ΡΠΊΠ° ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π·Π°ΠΊΠ°Π·Π° Π² ΡΠΎΡΠΌΠ°ΡΠ΅ unix (timestamp) |
user_id | integer | ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ |
total | float | ΠΎΠ±ΡΠ°Ρ ΡΡΠΌΠΌΠ° Π·Π°ΠΊΠ°Π·Π° Π² Π±Π°Π·ΠΎΠ²ΠΎΠΉ Π²Π°Π»ΡΡΠ΅ (USD) |
card_type | string | ΡΠΈΠΏ ΠΊΠ°ΡΡΡ ΠΎΠΏΠ»Π°ΡΡ |
card_number | string | Π½ΠΎΠΌΠ΅Ρ ΠΊΠ°ΡΡΡ ΠΎΠΏΠ»Π°ΡΡ |
order_country | string | ΡΡΡΠ°Π½Π°, ΠΈΠ· ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠ΄Π΅Π»Π°Π½ Π·Π°ΠΊΠ°Π· |
order_ip | string | IP-Π°Π΄ΡΠ΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΡΠ΄Π΅Π»Π°Π½ Π·Π°ΠΊΠ°Π· |
Π ΡΠ°ΠΉΠ»Π΅ user.json
ΡΠΎΠ΄Π΅ΡΠΆΠΈΡΡΡ ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ Π² JSON ΠΌΠ°ΡΡΠΈΠ² ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ. ΠΠΎΡ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅:
{
"id": 15,
"first_name": "Ivan",
"last_name": "Ivanivanskiy",
"gender": "Male",
"birthday": "665366400",
"avatar": "https://robohash.org/quibusdamminusea.bmp?size=100x100&set=set1",
"company_id": 6
}
ΠΏΠΎΠ»Π΅ | ΡΠΈΠΏ | ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ |
---|---|---|
id | integer | ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΡΠ΅Ρ order.user_id |
first_name | string | ΠΈΠΌΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ |
last_name | string | ΡΠ°ΠΌΠΈΠ»ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ |
gender | string | ΠΏΠΎΠ», ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· "Male", "Female" |
birthday | float / null | Π΄Π΅Π½Ρ ΡΠΎΠΆΠ΄Π΅Π½ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ unix timestamp |
avatar | string / null | ΡΡΡΠ»ΠΊΠ° Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Ρ Π°Π²Π°ΡΠ°ΡΠΎΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ |
company_id | integer / null | ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ |
Π Π½Π°ΠΊΠΎΠ½Π΅Ρ, ΡΠ°ΠΉΠ» companies.json
Ρ
ΡΠ°Π½ΠΈΡ ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ Π² JSON ΠΌΠ°ΡΡΠΈΠ² Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ
ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΉ. ΠΠΌΠ΅Π΅ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ:
{
"id": 6,
"title": "Bumbershoot Corp.",
"industry": "Apparel",
"market_cap": "$36.6M",
"sector": "Consumer Services",
"url": "http://awesome.website"
}
ΠΏΠΎΠ»Π΅ | ΡΠΈΠΏ | ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ |
---|---|---|
id | integer | ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΡΠ΅Ρ user.id |
title | string | Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ |
industry | string | ΠΎΡΡΠ°ΡΠ»Ρ Π΄Π΅ΡΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ |
market_cap | string | ΡΡΠ½ΠΎΡΠ½Π°Ρ ΠΊΠ°ΠΏΠΈΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ |
sector | string | ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ |
url | string / null | ΡΡΡΠ»ΠΊΠ° Π½Π° ΡΠ°ΠΉΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ |
β οΈ ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ»Ρ Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ²user
ΠΈcompany
ΠΌΠΎΠ³ΡΡ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ null.β οΈ
Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ Π²ΡΠ²ΠΎΠ΄ Π΄Π°Π½Π½ΡΡ Π² ΡΠ°Π±Π»ΠΈΡΡ Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ΅ Π½Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. Π‘ΡΡΡΠΊΡΡΡΠ° ΡΠ°Π±Π»ΠΈΡΡ Π΄ΠΎΠ»ΠΆΠ½Π° Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ°ΠΊ:
<table>
<thead>
<tr>
<th>Transaction ID</th>
<th>User Info</th>
<th>Order Date</th>
<th>Order Amount</th>
<th>Card Number</th>
<th>Card Type</th>
<th>Location</th>
</tr>
</thead>
<tbody>
...ΡΡΡ Π±ΡΠ΄ΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΎ Π·Π°ΠΊΠ°Π·Π°Ρ
...
</tbody>
</table>
ΠΠ»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π·Π°ΠΊΠ°Π·Π° Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠΌΠ΅ΡΡΠΈΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΠΈΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π² ΡΡΡΠΎΠΊΡ Π² ΡΠ°Π±Π»ΠΈΡΠ΅.
ΠΠ°ΠΆΠ΄ΡΠΉ <tr>
Π² html-ΡΠ°Π±Π»ΠΈΡΠ΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅ΡΡ id Π² Π·Π°Π΄Π°Π½Π½ΠΎΠΌ ΡΠΎΡΠΌΠ°ΡΠ΅: order_%id_Π·Π°ΠΏΠΈΡΠΈ%
.
Π ΡΡΠ΅ΠΉΠΊΠ΅ User
ΠΏΠΎΠΊΠ° Π²ΡΠ²ΠΎΠ΄ΠΈΠΌ ΡΠΎΠ»ΡΠΊΠΎ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ.
ΠΠ°ΡΠ° ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π·Π°ΠΊΠ°Π·Π° Π΄ΠΎΠ»ΠΆΠ½Π° ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ DD/MM/YYYY hh:mm:ss
.
ΠΠΎΠΌΠ΅Ρ ΠΊΠ°ΡΡΡ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΊΡΠ°Π½ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°ΠΊ, ΡΡΠΎΠ±Ρ Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ΅ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π»ΠΈΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠ΅ΡΠ²ΡΠ΅ Π΄Π²Π΅ ΠΈ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ ΡΠ΅ΡΡΡΠ΅ ΡΠΈΡΡΡ Π½ΠΎΠΌΠ΅ΡΠ°. ΠΠΎΠΌΠ΅Ρ Π·Π°ΠΊΠ°Π·Π° ΠΈ ΡΠΈΠΏ ΠΊΠ°ΡΡΡ Π²ΡΠ²ΠΎΠ΄ΠΈΠΌ ΠΊΠ°ΠΊ Π΅ΡΡΡ.
Π‘ΡΠΌΠΌΠ° Π·Π°ΠΊΠ°Π·Π° Π΄ΠΎΠ»ΠΆΠ½Π° ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ Π² Π΄Π΅Π½Π΅ΠΆΠ½ΠΎΠΌ ΡΠΎΡΠΌΠ°ΡΠ΅, Π²Π°Π»ΡΡΠ° USD.
Π ΡΡΠ΅ΠΉΠΊΠ΅ Location
ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½Π° Π² ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΡΠΎΡΠΌΠ°ΡΠ΅: %order_country% (%order_ip%)
.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
<tr id="order_11">
<td>8292e007-4682-idkfa-a404-eed9662fa5cc</td>
<td class="user_data">15</td>
<td>21/12/2017, 1:13:47 AM</td>
<td>$453.47</td>
<td>30********4733</td>
<td>diners-club-carte-blanche</td>
<td>IS (211.145.96.59)<td>
</tr>
ΠΠ°ΠΏΠΎΠ»Π½ΡΠ΅ΠΌ ΡΡΠ΅ΠΉΠΊΡ User Info
. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π½Π°ΠΌ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΡΠΏΠΈΡΠΎΠΊ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΈΠ· ΡΠ°ΠΉΠ»Π° users.json
ΠΈ Π½Π°ΠΉΡΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ c id
ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π³ΠΎ order.user_id
.
ΠΠ°Π»Π΅Π΅, Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΡΡΠΎΠΌΠΈΡΠΎΠ²Π°ΡΡ ΡΡΡΠΎΠΊΡ Ρ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΠ΅ΠΌ (Mr.
Π΅ΡΠ»ΠΈ Male
Π² ΠΏΠΎΠ»Π΅ Gender
, ΠΈΠ½Π°ΡΠ΅ Ms.
), ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠΈ ΡΠ°ΠΌΠΈΠ»ΠΈΠ΅ΠΉ. ΠΡΠ° ΡΡΡΠΎΠΊΠ° Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΠΎΠ±Π΅ΡΠ½ΡΡΠ° Π² ΡΠ΅Π³ <a href="#">
.
ΠΠΎΠ»ΡΡΠ΅Π½Π½ΡΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΠΏΠΎΠΌΠ΅ΡΠ°Π΅ΠΌ Π² ΡΡΠ΅ΠΉΠΊΡ ΡΠ°Π±Π»ΠΈΡΡ:
<tr id="order_11">
...
<td class="user-data">
<a href="#">Mr. Ivan Ivanivanskiy</a>
</td>
...
</tr>
ΠΠΎΠΏΠΎΠ»Π½ΠΈΠΌ ΠΈ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠΆΠΈΠ²ΠΈΠΌ Π½Π°ΡΡ ΡΠ°Π±Π»ΠΈΡΡ. ΠΠΎΠ±Π°Π²ΠΈΠΌ Π±Π»ΠΎΠΊ <div class="user-details">
, Π² ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠΌΠ΅ΡΡΠΈΠΌ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ ΠΈ ΡΠ²ΡΠ·Π°Π½ΠΎΠΉ Ρ Π½ΠΈΠΌ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ (Π΅ΡΠ»ΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΈΠΌΠ΅Π΅ΡΡΡ):
- Birthday: 01/02/1991
- ΡΠ»Π΅ΠΌΠ΅Π½Ρ img Ρ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΎΠΉ ΡΠΈΡΠΈΠ½ΠΎΠΉ Π½Π΅ Π±ΠΎΠ»Π΅Π΅ 100px
- Company: Bumbershoot Corp.
- Industry: Apparel / Consumer Services
ΠΠ»Ρ Π½Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ° ΡΡΠΎ Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ°ΠΊ:
<tr id="order_11">
...
<td class="user-data">
<a href="#">Mr. Ivan Ivanivanskiy</a>
<div class="user-details">
<p>Birthday: 01/02/1991</p>
<p><img src="" width="100px"></p>
<p>Company: <a href="http://awesome.website">Bumbershoot Corp.</a></p>
<p>Industry: Apparel / Consumer Services</p>
</div>
</td>
...
</tr>
Π’Π΅ΠΏΠ΅ΡΡ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΡΠΎΠ±ΡΡΠΈΡ "click", ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡ/ΡΠΊΡΡΠ²Π°ΡΡ Π±Π»ΠΎΠΊ div.user-details
ΠΏΡΠΈ Π½Π°ΠΆΠ°ΡΠΈΠΈ Π½Π° ΡΡΡΠ»ΠΊΡ. ΠΠ΅ΡΠ΅Ρ
ΠΎΠ΄Π° ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅ ΠΏΡΠΎΠΈΡΡ
ΠΎΠ΄ΠΈΡΡ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ. Π‘ΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΏΠΎ-ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ: Π±Π»ΠΎΠΊ Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ΅ΠΉ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΡΠΊΡΡΡ.
- ΠΡΠ»ΠΈ Π² Π΄Π°Π½Π½ΡΡ
ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π° ΡΡΡΠ»ΠΊΠ° Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, ΡΠΎ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ Π΄ΠΎΠ»ΠΆΠ½Π° Π²ΡΠ²ΠΎΠ΄ΠΈΡΡΡΡ ΠΌΠΈΠ½ΠΈΠ°ΡΡΡΠ° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, Π° Π½Π΅ ΡΠ°ΠΌΠ° ΡΡΡΠ»ΠΊΠ° (ΠΏΠΎΠ»Π΅ Π΄Π°Π½Π½ΡΡ
avatar
). - ΠΠ»Ρ
url
ΠΏΠΎΠ»Π΅ΠΉ Π΄Π°Π½Π½ΡΡ Π΄ΠΎΠ»ΠΆΠ½Π° Π²ΡΠ²ΠΎΠ΄ΠΈΡΡΡ ΡΡΡΠ»ΠΊΠ°, ΠΏΠΎ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ²Π΅ΡΡΠΈΡΡ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ ΠΈΠ· ΡΠ°Π±Π»ΠΈΡΡ. β οΈ ΠΡΠ±ΡΠ΅ ΡΡΡΠ»ΠΊΠΈ Π½Π° Π²Π½Π΅ΡΠ½ΠΈΠ΅ ΡΠ΅ΡΡΡΡΡ Π² Π½Π°ΡΠ΅ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΎΡΠΊΡΡΠ²Π°ΡΡΡΡ Π² Π½ΠΎΠ²ΠΎΠΉ Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ ΠΈΠ»ΠΈ Π½ΠΎΠ²ΠΎΠΌ ΠΎΠΊΠ½Π΅!β οΈ
ΠΠ°Π²Π°ΠΉΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ ΡΠ°Π±Π»ΠΈΡΡ. ΠΠΎΠΌΠ½ΠΈΡΠ΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ thead
Π½Π°ΡΠ΅ΠΉ ΡΠ°Π±Π»ΠΈΡΡ? ΠΠ΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ, ΡΡΠΎΠ±Ρ ΠΏΡΠΈ ΠΊΠ»ΠΈΠΊΠ΅ Π½Π° ΡΡΠ΅ΠΉΠΊΡ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, <thead>Order Amount</thead>
) Π΄Π°Π½Π½ΡΠ΅ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ ΡΠΎΡΡΠΈΡΠΎΠ²Π°Π»ΠΈΡΡ ΠΏΠΎ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅ΠΌΡ ΠΏΠΎΠ»Ρ Π² ΠΏΠΎΡΡΠ΄ΠΊΠ΅ Π²ΠΎΠ·ΡΠ°ΡΡΠ°Π½ΠΈΡ (Π΄Π»Ρ ΡΠΈΡΠ»Π΅Π½Π½ΡΡ
Π΄Π°Π½Π½ΡΡ
) ΠΈΠ»ΠΈ Π°Π»ΡΠ°Π²ΠΈΡΠ½ΠΎΠΌ (Π΄Π»Ρ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΡ
Π΄Π°Π½Π½ΡΡ
). Π‘ΡΠΎΠΈΡ ΡΡΠ΅ΡΡΡ, ΡΡΠΎ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΠΎΠ»Π±ΡΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ
ΠΏΠΎΠ»Π΅ΠΉ ΠΎΠ±ΡΠ΅ΠΊΡΠ° order
ΠΈ ΡΠ²ΡΠ·Π°Π½ΡΡ
Ρ Π½ΠΈΠΌ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² user
ΠΈ company
. Π ΡΠ°ΠΊΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, ΠΏΡΠΈ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ΅ ΡΠ»Π΅Π΄ΡΡΠ΅Ρ ΡΡΠΊΠΎΠ΄ΡΡΠ²ΠΎΠ²Π°ΡΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π°ΠΌΠΈ:
ΡΡΠΎΠ»Π±Π΅Ρ | ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ |
---|---|
User Info |
ΡΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎ ΠΏΠΎΠ»ΡΠΌ first_name ΠΈ last_name . ΠΡΡΠ°Π»ΡΠ½ΡΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ Π² ΡΡΠ΅ΠΉΠΊΠ΅ ΠΏΡΠ΅Π½Π΅Π±ΡΠ΅ΡΡ |
Card Number |
Π½Π΅ ΡΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎ Π΄Π°Π½Π½ΠΎΠΌΡ ΡΡΠΎΠ»Π±ΡΡ |
Location |
ΡΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ½Π°ΡΠ°Π»Π° ΠΏΠΎ Country, ΠΏΠΎΡΠΎΠΌ ΠΏΠΎ IP-Π°Π΄ΡΠ΅ΡΡ. IP-Π°Π΄ΡΠ΅Ρ ΡΡΠΈΡΠ°ΡΡ ΡΡΡΠΎΠΊΠΎΠΉ |
ΠΡΠ»ΠΈ ΡΠ°Π±Π»ΠΈΡΠ° ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²Π°Π½Π° ΠΏΠΎ ΠΊΠ°ΠΊΠΎΠΌΡ-Π»ΠΈΠ±ΠΎ ΡΡΠΎΠ»Π±ΡΡ, ΠΊ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅ΠΉ ΡΡΠ΅ΠΉΠΊΠ΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΡΠ³ Ρ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠΌ, ΠΈΠ½ΡΠΎΡΠΌΠΈΡΡΡΡΠ΅ΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΎ ΡΠ΅ΠΊΡΡΠ΅ΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ:
<span>↓</span>
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π² ΡΠ»ΡΡΠ°Π΅ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ ΠΏΠΎ Order Amount
Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ ΡΠ°Π±Π»ΠΈΡΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅ΡΡ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠΊΡ:
<thead>
<tr>
<th>#</th>
<th>User Info</th>
<th>Order Date</th>
<th>Order Amount <span>↓</span></th>
<th>Card Number</th>
<th>Card Type</th>
<th>Location</th>
</tr>
</thead>
ΠΠ»ΠΈΠΊΠ°Π±Π΅Π»ΡΠ½ΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° ΡΠ°Π±Π»ΠΈΡΡ ΠΏΡΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ Π½Π° Π½ΠΈΡ
Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΌΠ΅Π½ΡΡΡ ΡΠΈΠΏ ΠΊΡΡΡΠΎΡΠ° Π½Π° ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ ΡΠΈΠΏΠ° pointer
(Π²ΡΠΎΠ΄Π΅ ΡΡΠΎΠ³ΠΎ, π).
Π‘ΠΎΠ±ΠΈΡΠ°Π΅ΠΌ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΡ. ΠΠ½ΠΈΠ·Ρ ΡΠ°Π±Π»ΠΈΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΡΠΎΠΊ ΡΠΎ ΡΡΠ°ΡΠΈΡΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ΅ΠΉ.
- ΠΠ±ΡΠ΅Π΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π·Π°ΠΊΠ°Π·ΠΎΠ² Π²ΡΠ²Π΅Π΄Π΅Π½Π½ΠΎΠ΅ Π½Π° ΡΠ΅ΠΊΡΡΠΈΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π² ΡΠ°Π±Π»ΠΈΡΠ΅
- ΠΠ±ΡΠ°Ρ ΡΡΠΎΠΈΠΌΠΎΡΡΡ Π²ΡΠ΅Ρ Π·Π°ΠΊΠ°Π·ΠΎΠ² (Π² Π΄Π΅Π½Π΅ΠΆΠ½ΠΎΠΌ ΡΠΎΡΠΌΠ°ΡΠ΅)
- ΠΠ΅Π΄ΠΈΠ°Π½Π° ΠΏΠΎ Π²ΡΠ΅ΠΌ Π²ΡΠ²Π΅Π΄Π΅Π½Π½ΡΠΌ Π·Π°ΠΊΠ°Π·Π°ΠΌ
- Π‘ΡΠ΅Π΄Π½ΠΈΠΉ ΡΠ΅ΠΊ ΠΏΠΎ Π²ΡΠ΅ΠΌ Π²ΡΠ²Π΅Π΄Π΅Π½Π½ΡΠΌ Π·Π°ΠΊΠ°Π·Π°ΠΌ
- Π‘ΡΠ΅Π΄Π½ΠΈΠΉ ΡΠ΅ΠΊ Π΄Π»Ρ ΠΆΠ΅Π½ΡΠΈΠ½
- Π‘ΡΠ΅Π΄Π½ΠΈΠΉ ΡΠ΅ΠΊ Π΄Π»Ρ ΠΌΡΠΆΡΠΈΠ½
Π Π°Π·ΠΌΠ΅ΡΠΊΠ° Π±Π»ΠΎΠΊΠ° ΡΠΎ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠΎΠΉ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ°ΠΊ:
<tr>
<td>Orders Count</td>
<td>11</td>
</tr>
<tr>
<td>Orders Total</td>
<td>$ 6722.72</td>
</tr>
<tr>
<td>Median Value</td>
<td>$ 593.72</td>
</tr>
<tr>
<td>Average Check</td>
<td>$ 611.16</td>
</tr>
<tr>
<td>Average Check (Female)</td>
<td>$ 395.18</td>
</tr>
<tr>
<td>Average Check (Male)</td>
<td>$ 692.15</td>
</tr>
Π‘Π»Π΅Π΄ΡΠ΅Ρ ΡΡΠ΅ΡΡΡ, ΡΡΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΡΠ΅Π΅ΠΊ Π² ΡΡΡΠΎΠΊΠ°Ρ Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ΅ΠΉ ΠΎ Π·Π°ΠΊΠ°Π·Π΅ Π½Π΅ ΡΠΎΠ²ΠΏΠ°Π΄Π°Π΅Ρ Ρ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ ΡΡΠ΅Π΅ΠΊ Π² ΡΡΡΠΎΠΊΠ°Ρ ΡΠΎ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠΎΠΉ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ. HTML-ΡΠ°Π±Π»ΠΈΡΡ ΠΈΠΌΠ΅ΡΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΉ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ.
ΠΠΎΠΈΡΠΊ ΠΏΠΎ ΡΠ°Π±Π»ΠΈΡΠ΅. ΠΠ»Ρ ΡΠΏΡΠΎΡΠ΅Π½ΠΈΡ ΡΠ°Π±ΠΎΡΡ Ρ ΡΠ°Π±Π»ΠΈΡΠ΅ΠΉ Π·Π°ΠΊΠ°Π·ΠΎΠ² Π½ΡΠΆΠ½ΠΎ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠΎΠΈΡΠΊΠ° ΠΏΠΎ Π΄Π°Π½Π½ΡΠΌ Π·Π°ΠΊΠ°Π·ΠΎΠ². ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π΄Π°Π²Π°ΠΉΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΠΏΠΎΠ»Π΅ Π²Π²ΠΎΠ΄Π°, ΠΏΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ Π·Π°ΠΊΠ°Π·Ρ, ΠΎΠ΄Π½ΠΎ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ»Π΅ΠΉ ΠΊΠΎΡΠΎΡΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ Π² ΡΠ΅Π±Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»Ρ ΠΏΠΎΠΈΡΠΊΠ°. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΠΎΠΌΠ΅ΡΡΠΈΠΌ Π² "ΡΠ°ΠΏΠΊΡ" ΡΠ°Π±Π»ΠΈΡΡ ΠΏΠΎΠ»Π΅ ΠΏΠΎΠΈΡΠΊΠ°:
<tr>
<th>Search:</th>
<th><input type="text" id="search"></th>
</tr>
ΠΡΠΈ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΏΠΎΠΈΡΠΊΠ° ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌΠΈ ΠΏΠΎΠ»ΡΠΌΠΈ Π·Π°ΠΊΠ°Π·Π°, Π² ΠΊΠΎΡΠΎΡΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡ ΠΏΠΎΠΈΡΠΊ:
- ΠΠΌΡ ΠΈ ΡΠ°ΠΌΠΈΠ»ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ (
user.{first_name,last_name}
) - ΠΡΠ΅ ΠΏΠΎΠ»Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ°
order
, ΠΊΡΠΎΠΌΠ΅created_at
,card_number
β οΈ ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ Π΅ΡΠ»ΠΈ ΠΊ ΡΠ°Π±Π»ΠΈΡΠ΅ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½Π° ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° ΠΏΠΎ ΠΊΠ°ΠΊΠΎΠΌΡ-Π»ΠΈΠ±ΠΎ ΡΡΠΎΠ»Π±ΡΡ, ΡΠΎ ΠΎΠ½Π° Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ ΠΈ ΠΏΡΠΈ Π²ΡΠ²ΠΎΠ΄Π΅ Π½Π°ΠΉΠ΄Π΅Π½Π½ΡΡ Π·Π°ΠΊΠ°Π·ΠΎΠ².
ΠΡΠ»ΠΈ Π·Π°ΠΊΠ°Π·ΠΎΠ² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΡ
Π·Π°Π΄Π°Π½ΠΎΠΌΡ ΠΊΡΠΈΡΠ΅ΡΠΈΡ ΠΏΠΎΠΈΡΠΊΠ° Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½ΠΎ, Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π² ΡΠ°Π±Π»ΠΈΡΠ΅ Π²ΡΠ²Π΅ΡΡΠΈ ΠΎΠ΄Π½Ρ ΡΡΡΠΎΠΊΡ Ρ Π½Π°Π΄ΠΏΠΈΡΡΡ Nothing found
.
<tr>
<td>Nothing found</td>
</tr>
Π’Π°ΠΊΠΆΠ΅ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΠΎΠΈΡΠΊΠ° Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡΡΡΡ Π΄Π°Π½Π½ΡΠ΅ Π² Π±Π»ΠΎΠΊΠ΅ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠΈ. ΠΡΠ»ΠΈ ΠΏΠΎΠΈΡΠΊ Π½Π΅ Π΄Π°Π» ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ², ΡΠΎ Π²ΠΌΠ΅ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ Π² ΡΡΠ΅ΠΉΠΊΠ°Ρ ΡΠ°Π±Π»ΠΈΡΡ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡ Π±Π»ΠΎΠΊ `n/a.
ΠΡΠ²ΠΎΠ΄ Π΄Π°Π½Π½ΡΡ
Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½ Π² html-ΡΠ»Π΅ΠΌΠ΅Π½Ρ div
Ρ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠΌ app
Π² ΡΠ°ΠΉΠ»Π΅ src/index.html
JavaScript-ΠΊΠΎΠ΄, ΡΠ΅Π°Π»ΠΈΠ·ΡΡΡΠΈΠΉ Π²ΡΠ²ΠΎΠ΄ Π΄Π°Π½Π½ΡΡ
, Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Π² ΡΠ°ΠΉΠ»Π΅ src/app.js
- ΡΡΠΎ Π²Ρ
ΠΎΠ΄Π½Π°Ρ ΡΠΎΡΠΊΠ° Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠ°Π»ΡΠ½Π΅ΠΉΡΠ°Ρ ΡΡΡΡΠΊΡΡΡΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ - Π½Π° Π²Π°ΡΠ΅ ΡΡΠΌΠΎΡΡΠ΅Π½ΠΈΠ΅.
β οΈ ΠΡ ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌ Π·Π°Π΄Π°Π½ΠΈΠ΅ ΡΠ΅ΡΠ΅Π½Π½ΠΎΠ΅ Π½Π° ΡΠΈΡΡΠΎΠΌ JavaScript (ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ES2015+). ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΠ΅ΡΡΠΎΠ²ΠΎΠ΅ Π·Π°Π΄Π°Π½ΠΈΠ΅ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠ°, ΡΠΎΠ³Π΄Π° Π²Π°ΠΌ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΈΡΠ»Π°ΡΡ Π½Π°ΠΌ ΠΎΠ±ΠΎΡΠ½ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ²ΠΎΠ΅Π³ΠΎ Π²ΡΠ±ΠΎΡΠ° ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠ°.
π ΠΠ΅Π»ΡΠ·Ρ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°ΠΉΠ»Ρ Ρ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ (
data\orders.json
,data\users.json
ΠΈdata\companies.json
), ΡΠ΅ΠΊΡΠΈΡoutput
ΠΈΠ·webpack.config.js
, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π·Π°ΠΏΡΡΠΊΠ° ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΈΠ· ΡΠ΅ΠΊΡΠΈΠΈscripts
ΡΠ°ΠΉΠ»Π°package.json
. ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΡΠΈΡ ΡΠ°ΠΉΠ»Π°Ρ ΠΌΠΎΠ³ΡΡ ΠΏΠΎΠ²Π»Π΅ΡΡ Π·Π° ΡΠΎΠ±ΠΎΠΉ Π½Π°ΡΡΡΠ΅Π½ΠΈΡ Π² ΡΠ°Π±ΠΎΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΠΈ Π·Π°Π΄Π°Π½ΠΈΠ΅ Π½Π΅ Π±ΡΠ΄Π΅Ρ ΠΎΡΠ΅Π½Π΅Π½ΠΎ.
- ΠΠ»Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ CSS-ΡΡΠΈΠ»Π΅ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π»ΡΠ±ΠΎΠΉ css-ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ - Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Bootstrap
- ΠΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°ΡΡ Π°ΡΠΈΠ½Ρ
ΡΠΎΠ½Π½ΡΡ Π·Π°Π³ΡΡΠ·ΠΊΡ Π΄Π°Π½Π½ΡΡ
ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²ΠΎΠΌ Π²ΡΠ·ΠΎΠ²ΠΎΠ² ΠΊ API, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π±ΡΠ΄Π΅Ρ Π΄ΠΎΡΡΡΠΏΠ½ΠΎ ΠΏΠΎ Π°Π΄ΡΠ΅ΡΡ
http://localhost:9000/api/%ΠΈΠΌΡ_ΡΠ°ΠΉΠ»Π°%
ΠΏΠΎΡΠ»Π΅ Π·Π°ΠΏΡΡΠΊΠ° ΠΏΡΠΎΠ΅ΠΊΡΠ°. - Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π²Π°Π»ΡΡΡ Π΄Π»Ρ Π΄Π°Π½Π½ΡΡ Π² Π΄Π΅Π½Π΅ΠΆΠ½ΠΎΠΌ ΡΠΎΡΠΌΠ°ΡΠ΅. ΠΠ°Π½Π½ΡΠ΅ Π΄Π»Ρ ΠΊΠΎΠ½Π²Π΅ΡΡΠ°ΡΠΈΠΈ Π²Π°Π»ΡΡ Π±ΡΠ°ΡΡ ΠΎΡΡΡΠ΄Π° - https://api.exchangeratesapi.io/latest, Π±Π°Π·ΠΎΠ²ΠΎΠΉ Π²Π°Π»ΡΡΠΎΠΉ ΡΡΠΈΡΠ°ΡΡ USD.