<?php namespace app\admin\logic; use app\common\model\ActivityZone; use app\common\logic\BaseLogic; use support\exception\BusinessException; use think\facade\Db; /** * ActivityZone逻辑 * Class ActivityZoneLogic * @package app\admin\logic */ class ActivityZoneLogic extends BaseLogic { /** * @notes 添加 * @param array $params * @return bool * @author admin * @date 2024/12/20 10:52 */ public static function add(array $params): bool { Db::startTrans(); try { $insert = []; $time = time(); foreach ($params['product_ids'] as $product_id) { $insert[] = [ 'form_id' => $params['form_id'], 'product_id' => $product_id, 'create_time' => $time, 'update_time' => $time, ]; } ActivityZone::insertAll($insert); Db::commit(); return true; } catch (\Throwable $e) { Db::rollback(); throw new BusinessException($e->getMessage()); } } /** * @notes 编辑 * @param array $params * @return bool * @author admin * @date 2024/12/20 10:52 */ public static function edit(array $params): bool { Db::startTrans(); try { ActivityZone::where('id', $params['id'])->update([ 'form_id' => $params['form_id'], 'product_id' => $params['product_id'], ]); Db::commit(); return true; } catch (\Throwable $e) { Db::rollback(); throw new BusinessException($e->getMessage()); } } /** * @notes 删除 * @param array $params * @return bool * @author admin * @date 2024/12/20 10:52 */ public static function delete(array $params): bool { return ActivityZone::destroy($params['id']); } /** * @notes 获取详情 * @param $params * @return array * @author admin * @date 2024/12/20 10:52 */ public static function detail($params): array { return ActivityZone::findOrEmpty($params['id'])->toArray(); } }