'ID', 'mall_id' => 'Mall ID', 'status' => 'Status', 'coupon_id' => 'Coupon ID', 'goods_id' => 'Goods ID', 'created_at' => 'Created At', 'updated_at' => 'Updated At', ]; } /** * 保存数据 * * @param $coupon_id * @param $mall_id * @param $goods_id * * @return bool * @throws \yii\db\Exception */ public static function setData($coupon_id, $mall_id, $goods_id) { try { if ($coupon_id && $goods_id) { self::deleteAll([ 'and', [ 'coupon_id' => $coupon_id, 'status' => StatusEnum::ENABLED, 'mall_id' => $mall_id ], ['not in', 'goods_id', $goods_id] ]); $exist_goods_ids = self::find() ->select('goods_id') ->where([ 'mall_id' => $mall_id, 'goods_id' => $goods_id, 'coupon_id' => $coupon_id, 'status' => StatusEnum::ENABLED ]) ->column(); $insert = []; $now = time(); foreach ($goods_id as $id) { if (in_array($id, $exist_goods_ids)) continue; $insert[] = [$mall_id, $coupon_id, $id, $now, $now]; } $field = ['mall_id', 'coupon_id', 'goods_id', 'created_at', 'updated_at']; // 批量插入数据 Yii::$app->db->createCommand()->batchInsert(self::tableName(), $field, $insert)->execute(); } return true; } catch (Exception $e) { self::$static_error = $e->getMessage(); return false; } } }