foreach ($exportImportTables as $store_id => $store_guid) {
if (isset($motivations[$store_id])) {
- $writeOffs = WriteOffs::find()->alias('wo')->select(['wo.type', 'wo.date', 'wop.product_id', 'wop.quantity'])
+ $writeOffs = WriteOffs::find()->alias('wo')->select(['wo.type', 'wo.date', 'wop.product_id', 'wop.quantity', 'wop.summ'])
->rightJoin('write_offs_products wop', 'wop.write_offs_id = wo.id')
->where(['between', 'wo.date', $monthStart, $monthEnd])
->andWhere(['wo.store_id' => $store_guid])
$sum = 0;
foreach($writeOffs as $data) {
if (($data['type'] ?? '') == $key) {
- $sum += ($selfCostProductMap[date("Y-m-d", strtotime($data['date']))][$data['product_id']] ?? 0)
+ $value = ($selfCostProductMap[date("Y-m-d", strtotime($data['date']))][$data['product_id']] ?? 0)
* ($data['quantity'] ?? 0);
+ $sum += $value > 0 ? $value : ($data['summ'] ?? 0);
}
}
foreach($writeOffs as $data) {
$value = ($selfCostProductMap[date("Y-m-d", strtotime($data['date']))][$data['product_id']] ?? 0)
* ($data['quantity'] ?? 0);
- $sum = $value > 0 ? $value : $data['summ'];
+ $sum += $value > 0 ? $value : ($data['summ'] ?? 0);
}
return $sum;