From ae3349d2ff53767b5bc9cb30e1bf7e15f9e814ee Mon Sep 17 00:00:00 2001
From: lrj <owen.stl@gmail.com>
Date: 星期五, 03 十月 2025 20:45:44 +0800
Subject: [PATCH] 清理测试代码和调试文件

---
 backend/src/main/java/com/rongyichuang/player/service/ActivityPlayerService.java |  313 +++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 285 insertions(+), 28 deletions(-)

diff --git a/backend/src/main/java/com/rongyichuang/player/service/ActivityPlayerService.java b/backend/src/main/java/com/rongyichuang/player/service/ActivityPlayerService.java
index 85464e6..c623481 100644
--- a/backend/src/main/java/com/rongyichuang/player/service/ActivityPlayerService.java
+++ b/backend/src/main/java/com/rongyichuang/player/service/ActivityPlayerService.java
@@ -8,6 +8,8 @@
 import com.rongyichuang.player.entity.Player;
 import com.rongyichuang.player.repository.ActivityPlayerRepository;
 import com.rongyichuang.player.repository.PlayerRepository;
+import com.rongyichuang.activity.repository.ActivityRepository;
+import com.rongyichuang.activity.entity.Activity;
 import com.rongyichuang.common.entity.Media;
 import com.rongyichuang.common.repository.MediaRepository;
 import com.rongyichuang.common.enums.MediaTargetType;
@@ -16,6 +18,7 @@
 import com.rongyichuang.user.service.UserService;
 import com.rongyichuang.media.service.MediaV2Service;
 import com.rongyichuang.media.dto.MediaSaveInput;
+import com.rongyichuang.message.service.MessageService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -42,6 +45,9 @@
     private PlayerRepository playerRepository;
 
     @Autowired
+    private ActivityRepository activityRepository;
+
+    @Autowired
     private MediaRepository mediaRepository;
 
     @Autowired
@@ -53,8 +59,26 @@
     @Autowired
     private MediaV2Service mediaV2Service;
 
+    @Autowired
+    private MessageService messageService;
 
 
+    public ActivityPlayer getMyActivityPlayer(Long activityId) {
+        Long userId = userContextUtil.getCurrentUserId();
+        if (userId == null) {
+            return null;
+        }
+        Optional<Player> playerOpt = playerRepository.findByUserId(userId);
+        if (playerOpt.isEmpty()) {
+            return null;
+        }
+        Player player = playerOpt.get();
+        List<ActivityPlayer> activityPlayers = activityPlayerRepository.findByActivityIdAndPlayerIdOrderByCreateTimeDesc(activityId, player.getId());
+        if (activityPlayers.isEmpty()) {
+            return null;
+        }
+        return activityPlayers.get(0);
+    }
     /**
      * 鎻愪氦娲诲姩鎶ュ悕
      * @param input 鎶ュ悕杈撳叆淇℃伅
@@ -89,21 +113,30 @@
             }
             log.info("閫夋墜璁板綍澶勭悊鎴愬姛锛岄�夋墜ID: {}", player.getId());
 
-            // 3. 妫�鏌ユ槸鍚﹀凡缁忔姤鍚�
-            log.info("妫�鏌ユ槸鍚﹀凡缁忔姤鍚嶏紝娲诲姩ID: {}, 閫夋墜ID: {}", input.getActivityId(), player.getId());
-            Optional<ActivityPlayer> existingRegistration = activityPlayerRepository
-                    .findByActivityIdAndPlayerId(input.getActivityId(), player.getId());
-            if (existingRegistration.isPresent()) {
-                log.warn("閫夋墜宸茬粡鎶ュ悕杩囨娲诲姩");
-                return ActivityRegistrationResponse.error("鎮ㄥ凡缁忔姤鍚嶈繃姝ゆ椿鍔�");
+            // 3. 妫�鏌ユ槸鍚﹀凡缁忔姤鍚嶏紙涓ユ牸闄愬畾鍚屼竴娲诲姩+鍚屼竴閫夋墜锛�
+            log.info("妫�鏌ユ槸鍚﹀瓨鍦ㄦ湁鏁堟姤鍚嶏紙state IN 0,1锛夛紝娲诲姩ID: {}, 閫夋墜ID: {}", input.getActivityId(), player.getId());
+            Long activeOrPendingCount = activityPlayerRepository.countActiveOrPendingByActivityAndPlayer(input.getActivityId(), player.getId());
+            if (activeOrPendingCount != null && activeOrPendingCount > 0) {
+                log.warn("鍚屼竴娲诲姩涓庨�夋墜瀛樺湪寰呭鏍告垨宸查�氳繃鐨勬姤鍚嶈褰曪紝绂佹閲嶅鎻愪氦銆俢ount={}", activeOrPendingCount);
+                return ActivityRegistrationResponse.error("鎮ㄥ湪璇ユ椿鍔ㄥ凡鏈夊緟瀹℃牳鎴栧凡閫氳繃鐨勬姤鍚嶏紝璇峰嬁閲嶅鎻愪氦");
             }
-            log.info("鏈彂鐜伴噸澶嶆姤鍚�");
+            log.info("鏈彂鐜版湁鏁堟姤鍚嶏紝鍏佽鍒涘缓鏂扮殑鎶ュ悕璁板綍銆�");
 
-            // 4. 鍒涘缓鎶ュ悕璁板綍
+            // 4. 鏌ユ壘绗竴闃舵锛堜弗鏍硷細pid=娲诲姩ID 涓� sort_order=1锛夛紝鏈厤缃垯鎷掔粷鎶ュ悕
+            log.info("鏌ユ壘娲诲姩鐨勭涓�闃舵锛屾椿鍔↖D: {}", input.getActivityId());
+            Activity firstStage = activityRepository.findFirstStageByActivityId(input.getActivityId());
+            if (firstStage == null) {
+                log.warn("鏈壘鍒扮涓�闃舵锛坧id={}, sort_order=1锛夛紝鎷掔粷鎶ュ悕銆傛椿鍔↖D: {}", input.getActivityId(), input.getActivityId());
+                return ActivityRegistrationResponse.error("娲诲姩鏈厤缃涓�闃舵锛屾棤娉曟姤鍚�");
+            }
+            Long stageId = firstStage.getId();
+            log.info("鎵惧埌绗竴闃舵锛岄樁娈礗D: {}, 闃舵鍚嶇О: {}", firstStage.getId(), firstStage.getName());
+
+            // 5. 鍒涘缓鎶ュ悕璁板綍
             log.info("寮�濮嬪垱寤烘姤鍚嶈褰�");
             ActivityPlayer activityPlayer = new ActivityPlayer();
             activityPlayer.setActivityId(input.getActivityId());
-            activityPlayer.setStageId(input.getActivityId()); // 鏍规嵁鏂囨。锛氬鏋滄瘮璧涙湭瀹氫箟闃舵锛宻tage_id璁句负activity_id
+            activityPlayer.setStageId(stageId); // 缁戝畾鍒扮涓�闃舵鎴栨椿鍔ㄦ湰韬�
             activityPlayer.setPlayerId(player.getId());
             activityPlayer.setRegionId(input.getRegionId());
             activityPlayer.setProjectName(input.getProjectName()); // 璁剧疆椤圭洰鍚嶇О
@@ -114,18 +147,19 @@
             ActivityPlayer savedActivityPlayer = activityPlayerRepository.save(activityPlayer);
             log.info("鎶ュ悕璁板綍鍒涘缓鎴愬姛锛孖D: {}", savedActivityPlayer.getId());
 
-            // 5. 淇濆瓨鍏朵粬濯掍綋鏂囦欢锛堝吋瀹规棫鐗堟湰锛�
+            // 6. 淇濆瓨鍏朵粬濯掍綋鏂囦欢锛堝吋瀹规棫鐗堟湰锛�
             if (input.getMediaFiles() != null && !input.getMediaFiles().isEmpty()) {
                 saveMediaFiles(savedActivityPlayer.getId(), input.getMediaFiles());
             }
 
-            // 6. 淇濆瓨澶村儚濯掍綋璁板綍
+            // 7. 淇濆瓨澶村儚濯掍綋璁板綍
             if (input.getPlayerInfo().getAvatarMediaId() != null && !input.getPlayerInfo().getAvatarMediaId().trim().isEmpty()) {
                 savePlayerAvatarMedia(player.getId(), input.getPlayerInfo().getAvatarMediaId());
             }
 
-            // 7. 淇濆瓨闄勪欢濯掍綋璁板綍
+            // 8. 淇濆瓨闄勪欢濯掍綋璁板綍
             if (input.getAttachmentMediaIds() != null && !input.getAttachmentMediaIds().isEmpty()) {
+                log.info("寮�濮嬩繚瀛橀檮浠跺獟浣撹褰曪紝鎶ュ悕ID: {}, 闄勪欢鏁伴噺: {}", savedActivityPlayer.getId(), input.getAttachmentMediaIds().size());
                 saveAttachmentMediaRecords(savedActivityPlayer.getId(), input.getAttachmentMediaIds());
             }
 
@@ -299,16 +333,17 @@
 
             Player player = playerOpt.get();
             
-            // 鏌ユ壘璇ョ帺瀹跺湪鎸囧畾娲诲姩涓殑鎶ュ悕璁板綍
-            Optional<ActivityPlayer> activityPlayerOpt = activityPlayerRepository
-                    .findByActivityIdAndPlayerId(activityId, player.getId());
+            // 鏌ユ壘璇ョ帺瀹跺湪鎸囧畾娲诲姩涓殑鎶ュ悕璁板綍锛堣幏鍙栨渶鏂扮殑锛�
+            List<ActivityPlayer> activityPlayers = activityPlayerRepository
+                    .findByActivityIdAndPlayerIdOrderByCreateTimeDesc(activityId, player.getId());
             
-            if (!activityPlayerOpt.isPresent()) {
+            if (activityPlayers.isEmpty()) {
                 log.info("鐜╁ {} 鏈湪娲诲姩 {} 涓姤鍚�", player.getId(), activityId);
                 return null;
             }
 
-            ActivityPlayer activityPlayer = activityPlayerOpt.get();
+            // 鑾峰彇鏈�鏂扮殑鎶ュ悕璁板綍
+            ActivityPlayer activityPlayer = activityPlayers.get(0);
             
             // 鏋勫缓鍝嶅簲瀵硅薄
             PlayerRegistrationResponse response = new PlayerRegistrationResponse();
@@ -329,26 +364,248 @@
     }
 
     /**
-     * 淇濆瓨瀛﹀憳澶村儚
-     * 鍙傝�僯udge妯″潡鐨勫疄鐜帮紝灏嗗凡涓婁紶鐨勫ご鍍忓獟浣撴枃浠跺叧鑱斿埌瀛﹀憳
+     * 瀹℃牳閫氳繃
+     */
+    public Boolean approveActivityPlayer(Long activityPlayerId, String feedback) {
+        try {
+            Optional<ActivityPlayer> activityPlayerOpt = activityPlayerRepository.findById(activityPlayerId);
+            if (!activityPlayerOpt.isPresent()) {
+                throw new RuntimeException("鎶ュ悕璁板綍涓嶅瓨鍦�");
+            }
+
+            ActivityPlayer activityPlayer = activityPlayerOpt.get();
+            activityPlayer.setState(1); // 1=瀹℃牳閫氳繃
+            activityPlayer.setFeedback(feedback);
+            activityPlayerRepository.save(activityPlayer);
+
+            // 鍒涘缓瀹℃牳閫氳繃娑堟伅
+            messageService.createApprovalMessage(
+                activityPlayerId, 
+                activityPlayer.getPlayerId(), 
+                activityPlayer.getProjectName()
+            );
+
+            log.info("瀹℃牳閫氳繃鎴愬姛锛宎ctivityPlayerId: {}", activityPlayerId);
+            return true;
+        } catch (Exception e) {
+            log.error("瀹℃牳閫氳繃澶辫触锛宎ctivityPlayerId: {}", activityPlayerId, e);
+            throw new RuntimeException("瀹℃牳閫氳繃澶辫触", e);
+        }
+    }
+
+    /**
+     * 瀹℃牳椹冲洖
+     */
+    public Boolean rejectActivityPlayer(Long activityPlayerId, String feedback) {
+        try {
+            Optional<ActivityPlayer> activityPlayerOpt = activityPlayerRepository.findById(activityPlayerId);
+            if (!activityPlayerOpt.isPresent()) {
+                throw new RuntimeException("鎶ュ悕璁板綍涓嶅瓨鍦�");
+            }
+
+            ActivityPlayer activityPlayer = activityPlayerOpt.get();
+            activityPlayer.setState(2); // 2=瀹℃牳椹冲洖
+            activityPlayer.setFeedback(feedback);
+            activityPlayerRepository.save(activityPlayer);
+
+            // 鍒涘缓瀹℃牳椹冲洖娑堟伅
+            messageService.createRejectionMessage(
+                activityPlayerId, 
+                activityPlayer.getPlayerId(), 
+                activityPlayer.getProjectName()
+            );
+
+            log.info("瀹℃牳椹冲洖鎴愬姛锛宎ctivityPlayerId: {}", activityPlayerId);
+            return true;
+        } catch (Exception e) {
+            log.error("瀹℃牳椹冲洖澶辫触锛宎ctivityPlayerId: {}", activityPlayerId, e);
+            throw new RuntimeException("瀹℃牳椹冲洖澶辫触", e);
+        }
+    }
+
+    /**
+     * 鏇存柊鎶ュ悕淇℃伅
+     */
+    public ActivityRegistrationResponse updateActivityRegistration(Long activityPlayerId, ActivityRegistrationInput input) {
+        try {
+            log.info("寮�濮嬫洿鏂版姤鍚嶄俊鎭紝鎶ュ悕ID: {}", activityPlayerId);
+            
+            // 1. 鏌ユ壘鐜版湁鎶ュ悕璁板綍
+            Optional<ActivityPlayer> activityPlayerOpt = activityPlayerRepository.findById(activityPlayerId);
+            if (!activityPlayerOpt.isPresent()) {
+                throw new RuntimeException("鎶ュ悕璁板綍涓嶅瓨鍦�");
+            }
+            
+            ActivityPlayer activityPlayer = activityPlayerOpt.get();
+            
+            // 2. 鏇存柊閫夋墜淇℃伅
+            Player player = playerRepository.findById(activityPlayer.getPlayerId()).orElse(null);
+            if (player != null) {
+                player.setName(input.getPlayerInfo().getName());
+                if (input.getPlayerInfo().getGender() != null) {
+                    player.setGender(input.getPlayerInfo().getGender());
+                }
+                if (input.getPlayerInfo().getEducation() != null) {
+                    player.setEducation(input.getPlayerInfo().getEducation());
+                }
+                if (input.getPlayerInfo().getIntroduction() != null) {
+                    player.setIntroduction(input.getPlayerInfo().getIntroduction());
+                }
+                if (input.getPlayerInfo().getDescription() != null) {
+                    player.setDescription(input.getPlayerInfo().getDescription());
+                }
+                playerRepository.save(player);
+                
+                // 鏇存柊鐢ㄦ埛淇℃伅
+                updateUserInfo(player, input);
+            }
+            
+            // 3. 鏇存柊鎶ュ悕璁板綍鍩烘湰淇℃伅
+            if (input.getProjectName() != null) {
+                activityPlayer.setProjectName(input.getProjectName());
+            }
+            if (input.getDescription() != null) {
+                activityPlayer.setDescription(input.getDescription());
+            }
+            if (input.getRegionId() != null) {
+                activityPlayer.setRegionId(input.getRegionId());
+            }
+            
+            activityPlayerRepository.save(activityPlayer);
+            
+            // 4. 澶勭悊澶村儚鏇存柊
+            if (input.getPlayerInfo().getAvatarMediaId() != null && !input.getPlayerInfo().getAvatarMediaId().isEmpty()) {
+                // 淇濆瓨鏂板ご鍍�
+                savePlayerAvatarMedia(player.getId(), input.getPlayerInfo().getAvatarMediaId());
+            }
+            
+            // 5. 澶勭悊姣旇禌鍥剧墖鍜岃棰戞洿鏂�
+            if (input.getMediaFiles() != null) {
+                // 鍒犻櫎鏃х殑姣旇禌鍥剧墖鍜岃棰戣褰�
+                deleteOldSubmissionMedia(activityPlayerId);
+                // 淇濆瓨鏂扮殑姣旇禌鍥剧墖鍜岃棰�
+                saveMediaFiles(activityPlayerId, input.getMediaFiles());
+            }
+            
+            // 6. 澶勭悊闄勪欢鏇存柊
+            if (input.getAttachmentMediaIds() != null) {
+                // 鍒犻櫎鏃ч檮浠惰褰�
+                deleteOldAttachmentMedia(activityPlayerId);
+                // 淇濆瓨鏂伴檮浠�
+                saveAttachmentMediaRecords(activityPlayerId, input.getAttachmentMediaIds());
+            }
+            
+            log.info("鏇存柊鎶ュ悕淇℃伅鎴愬姛锛屾姤鍚岻D: {}", activityPlayerId);
+            
+            ActivityRegistrationResponse response = new ActivityRegistrationResponse();
+            response.setSuccess(true);
+            response.setMessage("鏇存柊鎶ュ悕淇℃伅鎴愬姛");
+            response.setRegistrationId(activityPlayerId);
+            response.setPlayerId(player.getId());
+            response.setUserId(player.getUserId());
+            response.setActivityPlayerId(activityPlayerId);
+            
+            return response;
+            
+        } catch (Exception e) {
+            log.error("鏇存柊鎶ュ悕淇℃伅澶辫触锛屾姤鍚岻D: {}", activityPlayerId, e);
+            throw new RuntimeException("鏇存柊鎶ュ悕淇℃伅澶辫触: " + e.getMessage(), e);
+        }
+    }
+
+
+
+    /**
+     * 鍒犻櫎鏃х殑姣旇禌鍥剧墖鍜岃棰戣褰�
+     */
+    private void deleteOldSubmissionMedia(Long activityPlayerId) {
+        try {
+            List<Media> oldSubmissionMedia = mediaRepository.findByTargetTypeAndTargetIdAndState(
+                MediaTargetType.ACTIVITY_PLAYER_SUBMISSION.getValue(), activityPlayerId, 1);
+            for (Media media : oldSubmissionMedia) {
+                media.setState(0); // 璁剧疆涓哄垹闄ょ姸鎬�
+                mediaRepository.save(media);
+            }
+            log.info("鍒犻櫎鏃ф瘮璧涘浘鐗�/瑙嗛璁板綍鎴愬姛锛屾姤鍚岻D: {}, 鍒犻櫎鏁伴噺: {}", activityPlayerId, oldSubmissionMedia.size());
+        } catch (Exception e) {
+            log.error("鍒犻櫎鏃ф瘮璧涘浘鐗�/瑙嗛璁板綍澶辫触锛屾姤鍚岻D: {}", activityPlayerId, e);
+        }
+    }
+
+    /**
+     * 鍒犻櫎鏃х殑闄勪欢濯掍綋璁板綍
+     */
+    private void deleteOldAttachmentMedia(Long activityPlayerId) {
+        try {
+            List<Media> oldAttachments = mediaRepository.findByTargetTypeAndTargetIdAndState(
+                5, activityPlayerId, 1); // target_type=5 鏄檮浠�
+            for (Media oldAttachment : oldAttachments) {
+                oldAttachment.setState(0); // 璁剧疆涓哄垹闄ょ姸鎬�
+                mediaRepository.save(oldAttachment);
+            }
+            log.info("鍒犻櫎鏃ч檮浠惰褰曟垚鍔燂紝鎶ュ悕ID: {}, 鍒犻櫎鏁伴噺: {}", activityPlayerId, oldAttachments.size());
+        } catch (Exception e) {
+            log.error("鍒犻櫎鏃ч檮浠惰褰曞け璐ワ紝鎶ュ悕ID: {}", activityPlayerId, e);
+        }
+    }
+
+    /**
+     * 鏇存柊瀹℃牳鎰忚
+     */
+    public Boolean updateFeedback(Long activityPlayerId, String feedback) {
+        try {
+            Optional<ActivityPlayer> activityPlayerOpt = activityPlayerRepository.findById(activityPlayerId);
+            if (!activityPlayerOpt.isPresent()) {
+                throw new RuntimeException("鎶ュ悕璁板綍涓嶅瓨鍦�");
+            }
+
+            ActivityPlayer activityPlayer = activityPlayerOpt.get();
+            activityPlayer.setFeedback(feedback);
+            activityPlayerRepository.save(activityPlayer);
+
+            log.info("鏇存柊瀹℃牳鎰忚鎴愬姛锛宎ctivityPlayerId: {}", activityPlayerId);
+            return true;
+        } catch (Exception e) {
+            log.error("鏇存柊瀹℃牳鎰忚澶辫触锛宎ctivityPlayerId: {}", activityPlayerId, e);
+            throw new RuntimeException("鏇存柊瀹℃牳鎰忚澶辫触", e);
+        }
+    }
+
+    /**
+     * 淇濆瓨鐢ㄦ埛澶村儚
+     * 灏嗗凡涓婁紶鐨勫ご鍍忓獟浣撴枃浠跺叧鑱斿埌鐢ㄦ埛
      */
     private void savePlayerAvatar(Long playerId, Long avatarMediaId) {
         try {
-            // 鏌ユ壘鐜版湁鐨勫ご鍍忚褰曞苟鍒犻櫎锛堢‘淇濅竴涓鍛樺彧鏈変竴涓ご鍍忥級
-            mediaRepository.deleteByTargetTypeAndTargetId(MediaTargetType.STUDENT_AVATAR.getValue(), playerId);
+            // 鑾峰彇player瀵瑰簲鐨勭敤鎴稩D
+            Optional<Player> playerOpt = playerRepository.findById(playerId);
+            if (!playerOpt.isPresent()) {
+                log.warn("鏈壘鍒板鍛樿褰曪紝瀛﹀憳ID: {}", playerId);
+                return;
+            }
+            
+            Player player = playerOpt.get();
+            Long userId = player.getUserId();
+            if (userId == null) {
+                log.warn("瀛﹀憳鏈叧鑱旂敤鎴凤紝瀛﹀憳ID: {}", playerId);
+                return;
+            }
+            
+            // 鏌ユ壘鐜版湁鐨勫ご鍍忚褰曞苟鍒犻櫎锛堢‘淇濅竴涓敤鎴峰彧鏈変竴涓ご鍍忥級
+            mediaRepository.deleteByTargetTypeAndTargetId(MediaTargetType.USER_AVATAR.getValue(), userId);
             
             // 鏇存柊濯掍綋鏂囦欢鐨則arget淇℃伅
             Media avatarMedia = mediaRepository.findById(avatarMediaId).orElse(null);
             if (avatarMedia != null) {
-                avatarMedia.setTargetType(MediaTargetType.STUDENT_AVATAR.getValue());
-                avatarMedia.setTargetId(playerId);
+                avatarMedia.setTargetType(MediaTargetType.USER_AVATAR.getValue());
+                avatarMedia.setTargetId(userId);
                 mediaRepository.save(avatarMedia);
-                log.info("瀛﹀憳澶村儚淇濆瓨鎴愬姛锛屽鍛業D: {}, 濯掍綋ID: {}", playerId, avatarMediaId);
+                log.info("鐢ㄦ埛澶村儚淇濆瓨鎴愬姛锛岀敤鎴稩D: {}, 濯掍綋ID: {}", userId, avatarMediaId);
             } else {
                 log.warn("鏈壘鍒板ご鍍忓獟浣撴枃浠讹紝濯掍綋ID: {}", avatarMediaId);
             }
         } catch (Exception e) {
-            log.error("淇濆瓨瀛﹀憳澶村儚鏃跺彂鐢熼敊璇紝瀛﹀憳ID: {}, 濯掍綋ID: {}", playerId, avatarMediaId, e);
+            log.error("淇濆瓨鐢ㄦ埛澶村儚鏃跺彂鐢熼敊璇紝瀛﹀憳ID: {}, 濯掍綋ID: {}", playerId, avatarMediaId, e);
         }
     }
 
@@ -385,7 +642,7 @@
             MediaSaveInput input = new MediaSaveInput();
             input.setTargetType("player");
             input.setTargetId(playerId);
-            input.setUrl(avatarMediaId); // COS璺緞
+            input.setPath(avatarMediaId); // COS璺緞
             input.setFileName("avatar.jpg"); // 榛樿澶村儚鏂囦欢鍚�
             input.setFileExt("jpg"); // 鏂囦欢鎵╁睍鍚�
             input.setFileSize(0L); // 鏂囦欢澶у皬鏆傛椂璁句负0
@@ -411,7 +668,7 @@
                 MediaSaveInput input = new MediaSaveInput();
                 input.setTargetType("activity_player");
                 input.setTargetId(activityPlayerId);
-                input.setUrl(mediaId); // COS璺緞
+                input.setPath(mediaId); // COS璺緞
                 input.setFileName("attachment"); // 榛樿闄勪欢鏂囦欢鍚�
                 input.setFileExt("jpg"); // 鏂囦欢鎵╁睍鍚�
                 input.setFileSize(0L); // 鏂囦欢澶у皬鏆傛椂璁句负0

--
Gitblit v1.8.0