]> gitweb.erp-flowers.ru Git - erp24_rep/yii-erp24/.git/commitdiff
ERP-85 Реализовать обмен данных с 1С Бухгалтерия
authormarina <m.zozirova@gmail.com>
Tue, 27 Aug 2024 07:11:11 +0000 (10:11 +0300)
committermarina <m.zozirova@gmail.com>
Tue, 27 Aug 2024 07:11:11 +0000 (10:11 +0300)
erp24/records/Motivation.php
erp24/scripts/tasks/task_33_insert_data_to_monitvation_from_motivation_buh.php

index f308d3825592d7d864cb63dac9b33a11b494ee48..65112bcd341ce352b024ba0544773a8061f8dfe8 100644 (file)
@@ -89,7 +89,7 @@ class Motivation extends \yii\db\ActiveRecord
 
     public static function getWeek($date = null)
     {
-        $date = $date ?? $date('d');
+        $date = $date ?? date('d');
         $d = date("d", strtotime($date));
         return intval(floor(($d - 1) / 7) + 1);
 
index 6de9245e26a8531dbe635cb56875f5dd9f97088b..a288bbf7e609c7fc243984f6650f9a36492a108d 100644 (file)
@@ -5,6 +5,7 @@
  */
 
 use yii\db\Exception;
+use yii\db\Expression;
 use yii\helpers\ArrayHelper;
 
 use yii\helpers\Json;
@@ -81,17 +82,23 @@ try {
         $motivationBuhValue = MotivationBuhValue::find()
             ->andWhere(['motivation_group_id' => $motivationGroup->id])
             ->groupBy('store_id, value_id, motivation_buh_id')
-            ->select('sum(value_float) as value_float', 'motivation_buh_id, value_id')
-            ->asArray();
+            ->select([
+                new Expression(
+                    'sum(value_float) as value_float, 
+                    motivation_buh_id as motivation_buh_id, 
+                    value_id as value_id,
+                    store_id as store_id'
+                )
+            ])
+            ->all();
 
         foreach ($motivationBuhValue as $value) {
-
-            $motivationBuh = MotivationBuh::findOne([$motivationBuhValue['motivation_buh_id']]);
+            $motivationBuh = MotivationBuh::findOne([$value->motivation_buh_id]);
 
             $motivation = Motivation::findOne([
                 'year' => $motivationBuh->year,
                 'month' => $motivationBuh->month,
-                'store_id' => $motivationBuhValue['store_id'],
+                'store_id' => $value->store_id,
             ]);
 
             if (!$motivation) {
@@ -99,7 +106,7 @@ try {
                 $motivation->setAttributes([
                     'year' => $motivationBuh->year,
                     'month' => $motivationBuh->month,
-                    'store_id' => $value['store_id']
+                    'store_id' => $value->store_id
                 ]);
                 $motivation->save();
             }
@@ -108,10 +115,11 @@ try {
             $motivationValue->setAttributes([
                 'motivation_id' => $motivation->id,
                 'motivation_group_id' => $motivationGroup->id,
-                'value_id' => $value['value_id'],
+                'value_id' => $value->value_id,
                 'value_type' => MotivationCostsItem::DATA_TYPE_FLOAT,
-                'value_float' => $value['value_float'],
+                'value_float' => $value->value_float,
             ]);
+            $motivationValue->save();
         }
 
         $info = ' ================ test Task ' . $taskNum . ' stop ================';