From: Alexander Smirnov Date: Mon, 2 Sep 2024 11:15:10 +0000 (+0300) Subject: [ERP-130] Дебаг 008 X-Git-Tag: 1.4~11^2~17 X-Git-Url: https://gitweb.erp-flowers.ru/?a=commitdiff_plain;h=c944e21a896e9a06f6c8bb62852b3f38258b3b38;p=erp24_rep%2Fyii-erp24%2F.git [ERP-130] Дебаг 008 --- diff --git a/erp24/services/MotivationService.php b/erp24/services/MotivationService.php index b225f9a5..ed1ad50e 100644 --- a/erp24/services/MotivationService.php +++ b/erp24/services/MotivationService.php @@ -457,9 +457,8 @@ class MotivationService $writeOffs = WriteOffs::find()->select(['items', 'type']) ->where(['between', 'date', $weekStart, $weekEnd]) ->andWhere(['store_id' => $exportImportTable->export_val]) -// ->indexBy('type') ->asArray()->all(); -// var_dump($writeOffs); + $selfCostProduct = SelfCostProduct::find()->select(['price', 'product_guid']) ->where(['between', 'date', $weekStart, $weekEnd]) ->andWhere(['store_id' => $store_id]) @@ -467,32 +466,32 @@ class MotivationService ->asArray()->all(); foreach (MotivationCostsItem::getWriteOffsItems() as $key) { - $data = $writeOffs[$key] ?? null; - $sum = 0; - if (!empty($data)) { - try { - $json = Json::decode($data['items'] ?? '[]'); - - foreach ($json as $itemArr) { - $sum += floatval(($selfCostProduct[$itemArr['product_id']]["price"] ?? 0)) * ($itemArr['quantity'] ?? 0); -// var_dump($selfCostProduct[$itemArr['product_id']]["price"] ?? 0); -// var_dump($itemArr['quantity'] ?? 0); - } - } catch (\Exception $ex) {} - } - $motivationItemType = MotivationCostsItem::writeOffsToMotivationItemMap($key); - $motivationCostsItem = MotivationCostsItem::find()->where(['name' => $motivationItemType])->one(); - /** @var $motivationCostsItem MotivationCostsItem */ - if ($motivation && $motivationCostsItem) { - var_dump($sum); - self::saveOrUpdateMotivationValue($motivation->id, 'week' . $ind, $motivationCostsItem->code, - MotivationCostsItem::DATA_TYPE_FLOAT, $sum); + foreach($writeOffs as $data) { + if (($data['type'] ?? '') != $key) { + continue; + } + $sum = 0; + if (!empty($data)) { + try { + $json = Json::decode($data['items'] ?? '[]'); + + foreach ($json as $itemArr) { + $sum += floatval(($selfCostProduct[$itemArr['product_id']]["price"] ?? 0)) * ($itemArr['quantity'] ?? 0); + } + } catch (\Exception $ex) {} + } + $motivationItemType = MotivationCostsItem::writeOffsToMotivationItemMap($key); + $motivationCostsItem = MotivationCostsItem::find()->where(['name' => $motivationItemType])->one(); + /** @var $motivationCostsItem MotivationCostsItem */ + if ($motivation && $motivationCostsItem) { + self::saveOrUpdateMotivationValue($motivation->id, 'week' . $ind, $motivationCostsItem->code, + MotivationCostsItem::DATA_TYPE_FLOAT, $sum); + } } } } -// var_dump("-------"); } -// die; + if ($motivation) { $motivation->save(); if ($motivation->getErrors()) {