Commit 0eff1ddcdedc5d7b5fcbd16dcf51e21e56b8ba94

Authored by Alexey Boroda
2 parents d12a1030 1d8bef6c

Merge remote-tracking branch 'origin/master'

frontend/controllers/CabinetController.php
@@ -88,7 +88,11 @@ @@ -88,7 +88,11 @@
88 if ($id) { 88 if ($id) {
89 $property = $this->findProperty($id); 89 $property = $this->findProperty($id);
90 } else { 90 } else {
91 - $property = new IntellectualProperty(); 91 + $property = new IntellectualProperty(
  92 + [
  93 + 'user_id' => \Yii::$app->user->id,
  94 + ]
  95 + );
92 $newRecord = true; 96 $newRecord = true;
93 } 97 }
94 if ($property->load(\Yii::$app->request->post()) && $property->save()) { 98 if ($property->load(\Yii::$app->request->post()) && $property->save()) {
@@ -129,11 +133,11 @@ @@ -129,11 +133,11 @@
129 public function actionList() 133 public function actionList()
130 { 134 {
131 $table = IntellectualProperty::find() 135 $table = IntellectualProperty::find()
132 -// ->where(  
133 -// [  
134 -// 'user_id' => \Yii::$app->user->identity->id,  
135 -// ]  
136 -// ) 136 + ->where(
  137 + [
  138 + 'user_id' => \Yii::$app->user->id,
  139 + ]
  140 + )
137 ->all(); 141 ->all();
138 return $this->render( 142 return $this->render(
139 'list', 143 'list',
@@ -424,8 +428,15 @@ @@ -424,8 +428,15 @@
424 428
425 public function findProperty($id) 429 public function findProperty($id)
426 { 430 {
427 - $model = IntellectualProperty::findOne($id);  
428 - if (empty($model)) { 431 + $model = IntellectualProperty::find()
  432 + ->where(
  433 + [
  434 + 'id' => $id,
  435 + 'user_id' => \Yii::$app->user->id,
  436 + ]
  437 + )
  438 + ->one();
  439 + if (empty( $model )) {
429 throw new NotFoundHttpException(); 440 throw new NotFoundHttpException();
430 } 441 }
431 return $model; 442 return $model;
frontend/models/IntellectualProperty.php
@@ -17,6 +17,7 @@ @@ -17,6 +17,7 @@
17 * @property string $contract 17 * @property string $contract
18 * @property string $type 18 * @property string $type
19 * @property CreativeRole[] $creativeRoles 19 * @property CreativeRole[] $creativeRoles
  20 + * @property CreativeRole $creativeRole
20 * @property User $user 21 * @property User $user
21 * @property Report[] $reports 22 * @property Report[] $reports
22 */ 23 */
@@ -93,6 +94,12 @@ @@ -93,6 +94,12 @@
93 return $this->hasMany(CreativeRole::className(), [ 'intellectual_property_id' => 'id' ]); 94 return $this->hasMany(CreativeRole::className(), [ 'intellectual_property_id' => 'id' ]);
94 } 95 }
95 96
  97 + public function getCreativeRole()
  98 + {
  99 + return $this->hasOne(CreativeRole::className(), [ 'intellectual_property_id' => 'id' ])
  100 + ->where([ 'user_id' => \Yii::$app->user->id ]);
  101 + }
  102 +
96 /** 103 /**
97 * @return \yii\db\ActiveQuery 104 * @return \yii\db\ActiveQuery
98 */ 105 */
frontend/views/cabinet/index.php
@@ -7,6 +7,7 @@ @@ -7,6 +7,7 @@
7 * @var IntellectualProperty[] $table 7 * @var IntellectualProperty[] $table
8 */ 8 */
9 9
  10 + use common\models\User;
10 use frontend\models\UserData; 11 use frontend\models\UserData;
11 use frontend\models\UserPassport; 12 use frontend\models\UserPassport;
12 use frontend\models\IntellectualProperty; 13 use frontend\models\IntellectualProperty;
@@ -15,6 +16,10 @@ @@ -15,6 +16,10 @@
15 use yii\widgets\Pjax; 16 use yii\widgets\Pjax;
16 17
17 $this->title = 'My Yii Application'; 18 $this->title = 'My Yii Application';
  19 + /**
  20 + * @var User $user
  21 + */
  22 + $user = \Yii::$app->user->identity;
18 ?> 23 ?>
19 <div class="style cab_content_list active-cab"> 24 <div class="style cab_content_list active-cab">
20 <?php 25 <?php
@@ -68,13 +73,61 @@ @@ -68,13 +73,61 @@
68 ?> 73 ?>
69 <tr> 74 <tr>
70 <td><?= $i; ?></td> 75 <td><?= $i; ?></td>
71 - <td><?php echo Html::a($row->title, ['sales', 'id' => $row->id])?></td> 76 + <td>
  77 + <?php
  78 + if($row->user_id == $user->id) {
  79 + echo Html::a($row->title, ['sales', 'id' => $row->id]);
  80 + } else {
  81 + echo $row->title;
  82 + }
  83 + ?>
  84 + </td>
72 <td><?= $row->registration_date ?></td> 85 <td><?= $row->registration_date ?></td>
73 <td><?= $row->genre ?></td> 86 <td><?= $row->genre ?></td>
74 - <td><?= $row->author_role ?></td>  
75 - <td></td>  
76 - <td></td>  
77 - <td></td> 87 + <td>
  88 + <?php
  89 + if(!empty($row->creativeRole)) {
  90 + echo $row->creativeRole->title;
  91 + } elseif($user->isAdmin()) {
  92 + echo '-';
  93 + } else {
  94 + echo 'У Вас немає ролі в даному ОІВ';
  95 + }
  96 + ?>
  97 + </td>
  98 + <td>
  99 + <?php
  100 + if(!empty($row->creativeRole)) {
  101 + echo $row->creativeRole->part.'%';
  102 + } else {
  103 + echo '-';
  104 + }
  105 + ?>
  106 + </td>
  107 + <td>
  108 + <?php
  109 + if(!empty($row->creativeRole)) {
  110 + $sum = 0;
  111 + foreach ($row->reports as $report) {
  112 + $sum += $report->sum;
  113 + }
  114 + echo ($sum * $row->creativeRole->part / 100);
  115 + unset($sum);
  116 + } else {
  117 + echo '-';
  118 + }
  119 + ?>
  120 + </td>
  121 + <td>
  122 + <?php
  123 + $sum = 0;
  124 + foreach ($row->reports as $report) {
  125 + $sum += $report->count;
  126 + }
  127 + echo $sum;
  128 + unset($sum);
  129 + ?>
  130 + </td>
78 </tr> 131 </tr>
79 <?php 132 <?php
80 $i++; 133 $i++;