From aa9782bfbbb83044c740bcba113c48f726cfc0d3 Mon Sep 17 00:00:00 2001
From: lion <120344285@qq.com>
Date: Fri, 22 May 2026 17:05:19 +0800
Subject: [PATCH] =?UTF-8?q?=E8=B6=85=E7=AE=A1=E7=BC=96=E8=BE=91?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/Http/Controllers/Api/ActivityController.php | 17 ++++++++++-------
public/admin/assets/ActivityList-66m6NwbC.css | 1 -
public/admin/assets/ActivityList-DKMv-SSE.js | 2 --
public/admin/assets/ActivityList-Dy5exxF2.css | 1 +
public/admin/assets/ActivityList-MbFrd_Y9.js | 2 ++
...itLogs-D64_xY75.js => AuditLogs-j-SdFcbQ.js} | 2 +-
...cklist-CXG0R0qr.js => Blacklist-j_zGZ_ho.js} | 2 +-
...hboard-3lsoSWiQ.js => Dashboard-g6-lFi8_.js} | 2 +-
...uLkR2hD.js => HikPeopleCounting-B0XeX4IG.js} | 2 +-
.../{Login-DpuDtSTR.js => Login-CVsEdbIj.js} | 4 ++--
.../assets/{Map-fETI81LH.js => Map-BJRpQmsN.js} | 2 +-
.../{Menus-Cqz2Ax_8.js => Menus-DnnwRL_3.js} | 2 +-
...ns-DHR3CRPo.js => Registrations-UtS3Kwur.js} | 2 +-
...-Vp0Sr5s8.js => RichEditorField-DcMqH_tt.js} | 2 +-
.../{Roles-tVLWF9w4.js => Roles-BBDG9rer.js} | 2 +-
...st-ClNjfnZ_.js => StudyTourList-i6-iCMdO.js} | 2 +-
...mLogs-D78YOqd_.js => SystemLogs-C9zLqTuV.js} | 2 +-
...t-CUYX8n3Q.js => TicketGrabList-DTaMIb-r.js} | 2 +-
...Y.js => TicketGrabRegistrations-HCmOkrT4.js} | 2 +-
...BBw5Bugk.js => TicketGrabVerify-BLXJ_vdq.js} | 2 +-
...ueList-DS_GF5lR.js => VenueList-BGOfc7d4.js} | 2 +-
.../{Verify-CsQBEhVU.js => Verify-DWU1t6oW.js} | 2 +-
...ogin-D3cTezaC.js => VerifyLogin-D9qYVX2V.js} | 2 +-
...yScan-DUe3u0Tq.js => VerifyScan-C9q9N1jV.js} | 2 +-
...UZM9Ro.js => dynamicAdminRoutes-4VhKw3dC.js} | 4 ++--
...UaviAO.js => dynamicAdminRoutes-Df5fA-Z0.js} | 2 +-
.../{index-BOlQ3aX6.js => index-uLgpWTLu.js} | 6 +++---
public/admin/index.html | 4 ++--
28 files changed, 41 insertions(+), 38 deletions(-)
delete mode 100644 public/admin/assets/ActivityList-66m6NwbC.css
delete mode 100644 public/admin/assets/ActivityList-DKMv-SSE.js
create mode 100644 public/admin/assets/ActivityList-Dy5exxF2.css
create mode 100644 public/admin/assets/ActivityList-MbFrd_Y9.js
rename public/admin/assets/{AuditLogs-D64_xY75.js => AuditLogs-j-SdFcbQ.js} (97%)
rename public/admin/assets/{Blacklist-CXG0R0qr.js => Blacklist-j_zGZ_ho.js} (99%)
rename public/admin/assets/{Dashboard-3lsoSWiQ.js => Dashboard-g6-lFi8_.js} (99%)
rename public/admin/assets/{HikPeopleCounting-BuLkR2hD.js => HikPeopleCounting-B0XeX4IG.js} (99%)
rename public/admin/assets/{Login-DpuDtSTR.js => Login-CVsEdbIj.js} (86%)
rename public/admin/assets/{Map-fETI81LH.js => Map-BJRpQmsN.js} (85%)
rename public/admin/assets/{Menus-Cqz2Ax_8.js => Menus-DnnwRL_3.js} (97%)
rename public/admin/assets/{Registrations-DHR3CRPo.js => Registrations-UtS3Kwur.js} (99%)
rename public/admin/assets/{RichEditorField-Vp0Sr5s8.js => RichEditorField-DcMqH_tt.js} (99%)
rename public/admin/assets/{Roles-tVLWF9w4.js => Roles-BBDG9rer.js} (98%)
rename public/admin/assets/{StudyTourList-ClNjfnZ_.js => StudyTourList-i6-iCMdO.js} (99%)
rename public/admin/assets/{SystemLogs-D78YOqd_.js => SystemLogs-C9zLqTuV.js} (96%)
rename public/admin/assets/{TicketGrabList-CUYX8n3Q.js => TicketGrabList-DTaMIb-r.js} (99%)
rename public/admin/assets/{TicketGrabRegistrations-CsfbaE1Y.js => TicketGrabRegistrations-HCmOkrT4.js} (99%)
rename public/admin/assets/{TicketGrabVerify-BBw5Bugk.js => TicketGrabVerify-BLXJ_vdq.js} (97%)
rename public/admin/assets/{VenueList-DS_GF5lR.js => VenueList-BGOfc7d4.js} (99%)
rename public/admin/assets/{Verify-CsQBEhVU.js => Verify-DWU1t6oW.js} (98%)
rename public/admin/assets/{VerifyLogin-D3cTezaC.js => VerifyLogin-D9qYVX2V.js} (93%)
rename public/admin/assets/{VerifyScan-DUe3u0Tq.js => VerifyScan-C9q9N1jV.js} (99%)
rename public/admin/assets/{dynamicAdminRoutes-CwUZM9Ro.js => dynamicAdminRoutes-4VhKw3dC.js} (60%)
rename public/admin/assets/{dynamicAdminRoutes-BBUaviAO.js => dynamicAdminRoutes-Df5fA-Z0.js} (68%)
rename public/admin/assets/{index-BOlQ3aX6.js => index-uLgpWTLu.js} (99%)
diff --git a/app/Http/Controllers/Api/ActivityController.php b/app/Http/Controllers/Api/ActivityController.php
index 0464a58..fd08a95 100644
--- a/app/Http/Controllers/Api/ActivityController.php
+++ b/app/Http/Controllers/Api/ActivityController.php
@@ -371,13 +371,16 @@ class ActivityController extends Controller
{
$this->ensureVenueOrCreatorPermission($request, $activity);
$this->authorizeActivityFullEdit($request, $activity);
- if (
- ActivityAuditLog::query()
- ->where('activity_id', $activity->id)
- ->where('action', ActivityAuditLog::ACTION_APPROVE)
- ->exists()
- ) {
- return response()->json(['message' => '该活动曾审核通过,无法删除'], 422);
+ /** 超管可删除曾审核通过且无报名记录的活动;非超管仍受限 */
+ if (! $request->user()?->isSuperAdmin()) {
+ if (
+ ActivityAuditLog::query()
+ ->where('activity_id', $activity->id)
+ ->where('action', ActivityAuditLog::ACTION_APPROVE)
+ ->exists()
+ ) {
+ return response()->json(['message' => '该活动曾审核通过,无法删除'], 422);
+ }
}
$count = $activity->reservations()->count();
if ($count > 0) {
diff --git a/public/admin/assets/ActivityList-66m6NwbC.css b/public/admin/assets/ActivityList-66m6NwbC.css
deleted file mode 100644
index 79c4509..0000000
--- a/public/admin/assets/ActivityList-66m6NwbC.css
+++ /dev/null
@@ -1 +0,0 @@
-.activity-verify-inline-line[data-v-bbd6b7ce]{flex-wrap:nowrap;flex:1;align-items:center;gap:8px;min-width:0;display:flex}.activity-verify-inline-line--wrap[data-v-bbd6b7ce]{flex-wrap:wrap}.activity-verify-inline-line__label[data-v-bbd6b7ce]{color:var(--color-text-2);flex-shrink:0;font-size:13px}.activity-verify-inline-line__input--url[data-v-bbd6b7ce]{flex:200px;min-width:160px;max-width:420px}.activity-verify-inline-line__input--pin[data-v-bbd6b7ce]{flex-shrink:0;width:120px;min-width:100px}.activity-address-coord-row[data-v-bbd6b7ce]{flex-wrap:wrap;align-items:center;gap:12px;width:100%;display:flex}.activity-address-coord-row__address[data-v-bbd6b7ce]{flex:45%;min-width:320px;max-width:100%}.activity-address-coord-row--hide-lnglat .activity-address-coord-row__address[data-v-bbd6b7ce]{flex:200px;min-width:0;max-width:100%}.activity-address-coord-row__lng[data-v-bbd6b7ce],.activity-address-coord-row__lat[data-v-bbd6b7ce]{flex:180px;width:200px;min-width:180px}.activity-address-coord-row__map[data-v-bbd6b7ce]{flex-shrink:0}.activity-time-label-with-action[data-v-bbd6b7ce]{flex-wrap:wrap;align-items:center;gap:6px;line-height:1.35;display:inline-flex}.activity-add-time-slot-btn[data-v-bbd6b7ce]{flex-shrink:0;min-width:unset!important;height:22px!important;padding:0 6px!important;font-size:11px!important;line-height:20px!important}.activity-time-slots-empty-hint[data-v-bbd6b7ce]{color:var(--color-text-3);font-size:12px}.activity-add-session-btn[data-v-bbd6b7ce]{width:auto}.activity-time-slot-row[data-v-bbd6b7ce]{flex-wrap:nowrap;align-items:center;gap:6px;width:100%;min-width:0;display:flex}.activity-time-slot-row[data-v-bbd6b7ce] .activity-specific-time-slot-picker.arco-picker{box-sizing:border-box;flex:none;width:102px!important;min-width:102px!important;max-width:102px!important;padding:3px 8px 3px 4px!important}.activity-time-slot-row[data-v-bbd6b7ce] .activity-specific-time-slot-picker .arco-picker-input{flex:1 1 0;min-width:0;padding:0 4px 0 6px!important}.activity-time-slot-row[data-v-bbd6b7ce] .activity-specific-time-slot-picker input{min-width:0;font-size:12px;padding-left:4px!important}.activity-time-slot-row[data-v-bbd6b7ce] .activity-specific-time-slot-picker .arco-picker-suffix{margin-left:2px}.activity-time-slot-row[data-v-bbd6b7ce] .activity-specific-time-slot-picker .arco-picker-suffix .arco-icon{font-size:12px}.activity-time-slot-row__tilde[data-v-bbd6b7ce]{color:var(--color-text-3);flex-shrink:0;font-size:11px}.activity-time-slot-row__del[data-v-bbd6b7ce]{flex-shrink:0}.activity-cover-carousel-wrap[data-v-bbd6b7ce]{flex-wrap:wrap;align-items:flex-start;gap:20px;width:100%;display:flex}.activity-cover-carousel-row__col[data-v-bbd6b7ce]{flex:320px;min-width:min(100%,320px)}.activity-cover-carousel-row__sub[data-v-bbd6b7ce]{color:var(--color-text-1);margin-bottom:8px;font-weight:500}.activity-cover-thumb[data-v-bbd6b7ce]{object-fit:cover;cursor:zoom-in;border:1px solid #e5e6eb;border-radius:4px;width:120px;height:70px}.activity-gallery-grid[data-v-bbd6b7ce]{flex-wrap:wrap;align-items:flex-start;gap:12px;width:100%;display:flex}.activity-gallery-item[data-v-bbd6b7ce]{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.activity-gallery-thumb[data-v-bbd6b7ce]{object-fit:cover;cursor:zoom-in;border:1px solid #e5e6eb;border-radius:4px;width:120px;height:70px}.activity-gallery-thumb--video[data-v-bbd6b7ce]{display:block}.activity-form-tags[data-v-bbd6b7ce]{width:100%;max-width:100%}.activity-form-tags__line[data-v-bbd6b7ce]{flex-flow:row;align-items:center;gap:8px;width:100%;display:flex}.activity-form-tags__input[data-v-bbd6b7ce]{flex:auto;min-width:0}.activity-form-tags__input[data-v-bbd6b7ce] .arco-input-wrapper{width:100%}.activity-form-tags__save[data-v-bbd6b7ce]{flex-shrink:0}.activity-form-tags__chips[data-v-bbd6b7ce]{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.activity-form-tags__empty[data-v-bbd6b7ce]{color:#86909c;font-size:12px}.activity-form-tags__chips--readonly[data-v-bbd6b7ce]{margin-top:0}.activity-form-tags__chips--inline[data-v-bbd6b7ce]{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.activity-audit-inline[data-v-bbd6b7ce]{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 16px;padding-bottom:4px;display:grid}.activity-audit-inline-row[data-v-bbd6b7ce]{align-items:flex-start;gap:12px;min-width:0;font-size:14px;line-height:1.5715;display:flex}.activity-audit-inline-row--tags[data-v-bbd6b7ce]{align-items:center}.activity-audit-inline-row--images[data-v-bbd6b7ce]{flex-wrap:wrap;grid-column:1/-1;gap:16px;display:flex}.activity-audit-image-col[data-v-bbd6b7ce]{flex-direction:column;flex:1;gap:8px;min-width:0;display:flex}.activity-audit-image-col .activity-audit-inline-label[data-v-bbd6b7ce]{text-align:left;flex:none}.activity-audit-image-value[data-v-bbd6b7ce]{border:1px solid var(--color-neutral-3);border-radius:var(--border-radius-small);background:var(--color-fill-2);box-sizing:border-box;min-height:100px;padding:8px}.activity-audit-inline-label[data-v-bbd6b7ce]{color:var(--color-text-3);text-align:right;flex:0 0 74px}.activity-audit-inline-value[data-v-bbd6b7ce]{min-width:0;color:var(--color-text-1);word-break:break-word;flex:1}.activity-audit-stack[data-v-bbd6b7ce]{margin-top:20px}.activity-audit-stack__label[data-v-bbd6b7ce]{color:var(--color-text-1);margin-bottom:8px;font-size:14px;font-weight:500}.activity-audit-stack__body[data-v-bbd6b7ce]{min-width:0}@media (width<=1400px){.activity-audit-inline[data-v-bbd6b7ce]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=980px){.activity-audit-inline[data-v-bbd6b7ce]{grid-template-columns:minmax(0,1fr)}}.activity-audit-static-text[data-v-bbd6b7ce]{color:var(--color-text-1);word-break:break-word;font-size:14px;line-height:1.5715}.activity-audit-static-text--fill[data-v-bbd6b7ce]{border:1px solid var(--color-neutral-3);border-radius:var(--border-radius-small);background:var(--color-fill-2);box-sizing:border-box;align-items:center;min-height:32px;padding:4px 11px;display:flex}.activity-audit-static-coord[data-v-bbd6b7ce]{border:1px solid var(--color-neutral-3);border-radius:var(--border-radius-small);background:var(--color-fill-2);box-sizing:border-box;min-height:32px;color:var(--color-text-2);font-variant-numeric:tabular-nums;align-items:center;padding:4px 11px;font-size:14px;line-height:1.5715;display:flex}.activity-audit-muted[data-v-bbd6b7ce]{color:var(--color-text-3);font-size:13px}.activity-audit-break[data-v-bbd6b7ce]{word-break:break-word}.activity-audit-rich[data-v-bbd6b7ce]{color:var(--color-text-1);background:#fafafa;border:1px solid #e5e6eb;border-radius:8px;max-height:380px;padding:12px;font-size:13px;line-height:1.7;overflow-y:auto}.activity-audit-rich[data-v-bbd6b7ce] img{vertical-align:top;max-width:100%;height:auto}.activity-audit-rich[data-v-bbd6b7ce] video{max-width:100%}.bts-preview-grid[data-v-bbd6b7ce]{flex-wrap:wrap;gap:16px;width:100%;display:flex}.bts-preview-item[data-v-bbd6b7ce]{box-sizing:border-box;flex:none;width:220px}.bts-preview-img[data-v-bbd6b7ce]{object-fit:cover;cursor:zoom-in;border:1px solid #e5e6eb;border-radius:8px;width:220px;height:220px;display:block}.bts-preview-actions[data-v-bbd6b7ce]{flex-flow:row;align-items:center;gap:8px;width:100%;margin-top:8px;display:flex}.bts-preview-actions[data-v-bbd6b7ce] .bts-act-btn.arco-btn-size-mini{flex:1 1 0;min-width:0;padding-left:6px;padding-right:6px}
diff --git a/public/admin/assets/ActivityList-DKMv-SSE.js b/public/admin/assets/ActivityList-DKMv-SSE.js
deleted file mode 100644
index ca4c4c6..0000000
--- a/public/admin/assets/ActivityList-DKMv-SSE.js
+++ /dev/null
@@ -1,2 +0,0 @@
-import{n as e,st as t}from"./axios-CiYFffbI.js";import{I as n,N as r,O as i,P as a,V as o,Y as s,_ as c,d as l,f as u,h as d,i as f,it as p,kt as m,l as h,nt as g,p as _,q as v,u as y,ut as ee,v as b,y as te,z as x}from"./runtime-core.esm-bundler-CnFWH3R5.js";import{n as S}from"./http-LCi9aT1G.js";import{d as ne,l as re,s as ie,u as C}from"./index-BOlQ3aX6.js";import{t as ae}from"./RichEditorField-Vp0Sr5s8.js";import{a as oe}from"./h5Http-Dev8ozqN.js";import{n as se,t as ce}from"./adminMediaLimits-D12la4Im.js";import{t as le}from"./listTableRowIndex-DDHXZmUA.js";import{n as ue,t as w}from"./xlsx-BP_eUM5j.js";function de(e,t){return function(){return e()?window.confirm(t):!0}}function fe(e,t=`当前有未保存改动,确定要离开吗?`){function n(t){e()&&(t.preventDefault(),t.returnValue=``)}re((n,r,i)=>{if(!e()){i();return}i(window.confirm(t))}),r(()=>{window.addEventListener(`beforeunload`,n)}),a(()=>{window.removeEventListener(`beforeunload`,n)})}function T(e){return e==null||e===``?``:typeof e==`string`?e:typeof e==`number`||typeof e==`boolean`?String(e):JSON.stringify(e)}function E(e){if(e==null||e===``)return``;let t=Number(e);return Number.isFinite(t)?t:``}function D(e){return e==null||e===``?``:String(e).replace(`T`,` `).slice(0,19)}function pe(e){return e===!0||e===1||e===`1`||e===`true`?`是`:e===!1||e===0||e===`0`||e===`false`?`否`:``}function me(e,t=12e3){let n=String(e??``).trim();return n?n.replace(/
+
-
+