Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠ°
composer require sergios/yii2-worksection
ΠΠ»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π΄ΠΎΠΌΠ΅Π½Π°, api ΠΊΠ»ΡΡΠ°, Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ Π΄Π»Ρ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΡΠ°ΠΉΠ»ΠΎΠ² Π² common/config/params Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ:
' worksection-api' => [
' domain' => ' https://api Π΄ΠΎΠΌΠ΅Π½' , // api Π΄ΠΎΠΌΠ΅Π½ worksection Π²Π°ΡΠ΅ΠΉ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ (ΠΡΠΈΠΌΠ΅Ρ - https://doris.worksection.com)
' apiKey' => ' api ΠΊΠ»ΡΡ' , // api hash key - (Π³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ»ΡΠΊΠΎ Π°Π΄ΠΌΠΈΠ½ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ)
' uploadPath' => ' /uploads/tests' // Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΉ ΠΏΡΡΡ Π΄Π»Ρ ΡΠΎΡ
ΡΠ°Π½Π΅Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ webroot (ΠΏΠΎΡΠ»Π΅ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ ΡΠ°ΠΉΠ»Π° api ΠΎΠ½ Π±ΡΠ΄Π΅Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠ΄Π°Π»Π΅Π½)
]
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅
Π Π°Π±ΠΎΡΠ° Ρ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠΌΠΈ
ΠΠΎΠΈΡΠΊ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅Π²
use sergios\worksectionApi\src\mappers\CommentMapper ;
$commentMapper = new CommentMapper (' ΡΡΡΠ»ΠΊΠ° Π½Π° Π·Π°Π΄Π°ΡΡ' );// ΠΡΠΈΠΌΠ΅Ρ /project/51000/7784366/
// Π findByAttributes ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠ° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΠΏΡΠΎΠΈΡΡ
ΠΎΠ΄ΠΈΡ ΠΏΠΎ Π°ΡΡΠΈΠ±ΡΡΠ°Ρ
2 ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ (Comments,User).
// ΠΠΌΡ ΠΏΠΎΠ»Π΅ΠΉ ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°ΡΡ Π² ΠΌΠ΅ΡΠΎΠ΄ findByAttribures:
// - ΠΌΠΎΠ΄Π΅Π»Ρ User [
' user' => [
' id' => Integer | String ,
' lastName' => String ,
' email' => String ,
' name' => String ,
' post' => String ,
' avatar' => String ,
' company' => String ,
' department' => String
]
];
// - ΠΌΠΎΠ΄Π΅Π»Ρ Comment
[
' dateAdded' => String ,
' text' => String
];
$commentCollection = $commentMapper -> findByAttributes([
' dateAdded' => ' 2019-07-24 11:01' , // Π€ΠΎΡΠΌΠ°Ρ YYYY-MM-DD hh:mm
' text' => ' Test' , // Π’Π΅ΠΊΡΡ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡ
' user' => [
' id' => user ID , // integer or string
' lastName' => ' Π€Π°ΠΌΠΈΠ»ΠΈΡ' ,
' firstName' => ' ΠΠ°ΡΠΈΠ»ΠΈΠΉ' ,
' email' => ' test@gmail.com' ,
' name' => ' ΠΠ°ΡΠΈΠ»ΠΈΠΉ ΠΠ΅ΡΡΠΎΠ²ΠΈΡ' ,
' post' => ' Backend developer' , // Π΄ΠΎΠ»ΠΆΠ½ΠΎΡΡΡ
' avatar' => ' https://ΡΡΡΠ»ΠΊΠΈ-Π½Π°-Π°Π²Π°ΡΠ°Ρ' ,
' company' => ' ΠΠ°Π·Π²Π°Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ' ,
' department' => ' ΠΡΠ΄Π΅Π»' ,
]
]);// Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΡ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅Π² ΠΏΠΎ ΠΊΡΠΈΡΠ΅ΡΠΈΡΡ
ΠΏΠΎΠΈΡΠΊΠ°
$commentCollection = $commentMapper -> findAll();// Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΡ Π²ΡΠ΅Ρ
ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅Π²
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ΅ΡΠ°ΡΠΈΡ
use sergios\worksectionApi\src\models\Comment ;
use sergios\worksectionApi\src\mappers\CommentMapper ;
use sergios\worksectionApi\src\models\User ;
$commentMapper = new CommentMapper (' ΡΡΡΠ»ΠΊΠ° Π½Π° Π·Π°Π΄Π°ΡΡ' );// ΠΡΠΈΠΌΠ΅Ρ /project/51000/7784366/
// ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ΅ΡΠ°ΡΠΈΡ
$comment = new Comment ();
$comment -> setAttributes([' text' => ' Test' ]);// Π’Π΅ΠΊΡΡ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡ
$comment -> setTodo(1 ,' check box text 1' ); // Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ checkbox Ρ ΡΠ΅ΠΊΡΡΠΎΠΌ - check box text 1
$comment -> setTodo(2 ,' check box text 2' ); // Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ checkbox Ρ ΡΠ΅ΠΊΡΡΠΎΠΌ - check box text 2
...
$comment -> saveImage($image ); // ΠΎΡΠΏΡΠ°Π²ΠΊΠ° ΡΠ°ΠΉΠ»Π° ΠΊ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ($image - ΠΎΠ±ΡΠ΅ΠΊΡ UploadedFile)
// ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ
$user = new User ();
$user -> setAttributes([' email' => ' sergeydovzhanutsia@gmail.com' ]);// Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π°ΡΡΠΈΠ±ΡΡΠΎΠ² ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ
$comment -> setUser($user );// ΠΏΡΠΈΠ²ΡΠ·ΠΊΠ° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΊ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡ
$commentMapper = $commentMapper -> create($comment );// Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ΅ΡΠ°ΡΠΈΡ (Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΎΠ±ΡΠ΅ΠΊΡ ΡΠΎΠ·Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡ)
Π Π°Π±ΠΎΡΠ° Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌΠΈ
use sergios\worksectionApi\src\mappers\UserMapper ;
$userMapper = new UserMapper ();
$userCollection = $userMapper -> findAll(); // Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΡ Π²ΡΠ΅Ρ
ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ
// ΠΏΠΎΠΈΡΠΊ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΏΠΎ ΠΊΡΠΈΡΠ΅ΡΠΈΡΠΌ
// Π findByAttribures Π½ΡΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°ΡΡ ΠΈΠΌΡ ΠΏΠΎΠ»Π΅ΠΉ ΠΊΠΎΡΠΎΡΠΎΠ΅ Π΅ΡΡΡ Π² ΠΌΠΎΠ΄Π΅Π»ΠΈ User.
$userCollection = $userMapper -> findByAttributes([
' id' => 51659 , // id ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ
' email' => ' email' ,
' lastName' => ' ΡΠ°ΠΌΠΈΠ»ΠΈΡ' ,
' firstName' => ' ΠΈΠΌΡ' ,
' name' => ' ΠΈΠΌΡ ΡΠ°ΠΌΠΈΠ»ΠΈΡ' ,
' post' => ' Π΄ΠΎΠ»ΠΆΠ½ΠΎΡΡΡ' ,
' avatar' => ' https://ΡΡΡΠ»ΠΊΠ°-Π½Π°-Π°Π²Π°ΡΠ°Ρ' ,
' company' => ' ΠΠ°Π·Π²Π°Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ' ,
' department' => ' ΠΡΠ΄Π΅Π»' ,
]); // Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΡ Π²ΡΠ΅Ρ
Π½Π°ΠΉΠ΄Π΅Π½Π½ΡΡ
ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ