| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- <?php
- namespace common\logic\order\marketing;
- use common\enums\AddonsEnum;
- use common\models\mall\MallAddons;
- /**
- * Class FullReduceMarketing
- * 满减计算
- * @Author: lun
- * @DateTime: 2021/9/30 0030 14:53
- * @Copyright: copyright (c) 2021 广东七件事集团
- * @package common\logic\order\marketing
- */
- class HigoMarketing extends BaseMarketing
- {
- public function execute($form)
- {
- }
- /**
- * 满减计算
- * @Author: lun
- * @DateTime: 2021/10/6 0006 10:55
- * @Copyright: copyright (c) 2021 广东七件事集团
- * @param $item
- * @param $form
- * @return mixed
- */
- public static function compute($item, &$form, &$extra = [])
- {
- try {
- // 检测是否有安装嗨购应用
- if (MallAddons::isInstall($item['mch_order_info']['mall_id'], AddonsEnum::ADDONS_NAME_HI_GO)) {
- $mch_arr = [];
- foreach ($item['goods'] as $goods) {
- foreach ($goods['goods_details'] as $v) {
- if (isset($v['mch_id']) && $v['mch_id'] > 0) {
- $mch_arr[] = $v['mch_id'];
- break;
- }
- }
- }
- if (count($mch_arr) > 0) {
- $marketing = new \addons\HiGo\common\logic\order\HigoMchMarketing();
- } else {
- $marketing = new \addons\HiGo\common\logic\order\HigoMarketing();
- }
- $item = $marketing::compute($item, $form, $extra);
- if ($item == false) throw new \Exception($marketing::getStaticError());
- }
- return $item;
- } catch (\Exception $e) {
- self::setStaticError($e->getMessage());
- return false;
- }
- }
- }
|