From a12f9b3142bfe790c9f3586217be413ba35e2ffe Mon Sep 17 00:00:00 2001 From: xiangpei <xiangpei@timesnew.cn> Date: 星期二, 03 六月 2025 20:33:44 +0800 Subject: [PATCH] 视频主页-个人信息修改 --- framework/src/main/java/cn/lili/modules/lmk/domain/vo/WxVideoVO.java | 1 framework/src/main/resources/mapper/lmk/VideoMapper.xml | 2 framework/src/main/java/cn/lili/modules/lmk/domain/form/VideoHomePageInfoForm.java | 28 ++++++++++++++ buyer-api/src/main/java/cn/lili/controller/lmk/VideoController.java | 7 +++ framework/src/main/java/cn/lili/modules/member/serviceimpl/MemberServiceImpl.java | 34 ++++++++++++----- framework/src/main/java/cn/lili/modules/lmk/service/VideoService.java | 8 ++++ framework/src/main/java/cn/lili/modules/lmk/service/impl/VideoServiceImpl.java | 29 +++++++++++--- 7 files changed, 92 insertions(+), 17 deletions(-) diff --git a/buyer-api/src/main/java/cn/lili/controller/lmk/VideoController.java b/buyer-api/src/main/java/cn/lili/controller/lmk/VideoController.java index 9b3a130..659c7e7 100644 --- a/buyer-api/src/main/java/cn/lili/controller/lmk/VideoController.java +++ b/buyer-api/src/main/java/cn/lili/controller/lmk/VideoController.java @@ -4,6 +4,7 @@ import cn.lili.group.Update; import cn.lili.group.Add; import cn.lili.modules.lmk.domain.form.VideoFootPrintForm; +import cn.lili.modules.lmk.domain.form.VideoHomePageInfoForm; import cn.lili.modules.lmk.domain.query.AuthorVideoQuery; import cn.lili.modules.member.entity.dos.FootPrint; import org.springframework.validation.annotation.Validated; @@ -96,4 +97,10 @@ public Result getAuthorCollectVideoPage(AuthorVideoQuery query) { return videoService.getAuthorCollectVideoPage(query); } + + @PostMapping("/home-page-info-edit") + @ApiOperation(value = "淇濆瓨瑙嗛涓婚〉鐨勪釜浜轰俊鎭慨鏀�", notes = "淇濆瓨瑙嗛涓婚〉鐨勪釜浜轰俊鎭慨鏀�") + public Result homePageInfoEdit(@RequestBody @Validated VideoHomePageInfoForm form) { + return videoService.homePageInfoEdit(form); + } } diff --git a/framework/src/main/java/cn/lili/modules/lmk/domain/form/VideoHomePageInfoForm.java b/framework/src/main/java/cn/lili/modules/lmk/domain/form/VideoHomePageInfoForm.java new file mode 100644 index 0000000..3f044bb --- /dev/null +++ b/framework/src/main/java/cn/lili/modules/lmk/domain/form/VideoHomePageInfoForm.java @@ -0,0 +1,28 @@ +package cn.lili.modules.lmk.domain.form; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; + +/** + * @author锛歺p + * @date锛�2025/6/3 20:09 + */ +@Data +@ApiModel("瑙嗛涓婚〉涓汉淇℃伅淇敼") +public class VideoHomePageInfoForm { + + @ApiModelProperty("涓�х鍚�") + private String motto; + + @NotBlank(message = "鏄电О涓嶈兘涓虹┖") + @ApiModelProperty("鏄电О") + private String nickName; + + @NotBlank(message = "澶村儚涓嶈兘涓虹┖") + @ApiModelProperty("澶村儚") + private String avatar; + +} diff --git a/framework/src/main/java/cn/lili/modules/lmk/domain/vo/WxVideoVO.java b/framework/src/main/java/cn/lili/modules/lmk/domain/vo/WxVideoVO.java index 3600fa2..9a7a98e 100644 --- a/framework/src/main/java/cn/lili/modules/lmk/domain/vo/WxVideoVO.java +++ b/framework/src/main/java/cn/lili/modules/lmk/domain/vo/WxVideoVO.java @@ -35,6 +35,7 @@ /** 鍥剧墖灏侀潰 */ @ApiModelProperty("鍥剧墖灏侀潰") private String coverUrl; + private String coverFileKey; /** 瑙嗛鍦板潃 */ @ApiModelProperty("瑙嗛鍦板潃") diff --git a/framework/src/main/java/cn/lili/modules/lmk/service/VideoService.java b/framework/src/main/java/cn/lili/modules/lmk/service/VideoService.java index 09a274d..b13cb9b 100644 --- a/framework/src/main/java/cn/lili/modules/lmk/service/VideoService.java +++ b/framework/src/main/java/cn/lili/modules/lmk/service/VideoService.java @@ -167,4 +167,12 @@ * @return */ Result getAuthorCollectVideoPage(AuthorVideoQuery query); + + /** + * 淇濆瓨瑙嗛涓婚〉鐨勪釜浜轰俊鎭慨鏀� + * + * @param form + * @return + */ + Result homePageInfoEdit(VideoHomePageInfoForm form); } diff --git a/framework/src/main/java/cn/lili/modules/lmk/service/impl/VideoServiceImpl.java b/framework/src/main/java/cn/lili/modules/lmk/service/impl/VideoServiceImpl.java index ef88f79..a15a912 100644 --- a/framework/src/main/java/cn/lili/modules/lmk/service/impl/VideoServiceImpl.java +++ b/framework/src/main/java/cn/lili/modules/lmk/service/impl/VideoServiceImpl.java @@ -1,9 +1,7 @@ package cn.lili.modules.lmk.service.impl; import cn.lili.common.security.context.UserContext; -import cn.lili.modules.lmk.domain.entity.VideoAuditRecord; -import cn.lili.modules.lmk.domain.entity.VideoTag; -import cn.lili.modules.lmk.domain.entity.VideoTagRef; +import cn.lili.modules.lmk.domain.entity.*; import cn.lili.modules.lmk.domain.form.*; import cn.lili.modules.lmk.domain.query.AuthorVideoQuery; import cn.lili.modules.lmk.domain.query.ManagerVideoQuery; @@ -13,10 +11,11 @@ import cn.lili.modules.lmk.enums.general.ViewTypeEnum; import cn.lili.modules.lmk.service.*; import cn.lili.modules.member.entity.dos.FootPrint; +import cn.lili.modules.member.entity.dos.Member; import cn.lili.modules.member.service.FootprintService; +import cn.lili.modules.member.service.MemberService; import cn.lili.utils.COSUtil; import com.baomidou.mybatisplus.core.metadata.IPage; -import cn.lili.modules.lmk.domain.entity.Video; import cn.lili.modules.lmk.mapper.VideoMapper; import cn.lili.base.Result; import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper; @@ -55,6 +54,8 @@ private final COSUtil cosUtil; private final FootprintService footprintService; private final MySubscribeService mySubscribeService; + private final MemberService memberService; + private final VideoAccountService videoAccountService; /** * 娣诲姞 @@ -295,6 +296,7 @@ v.setTagList(tagMap.get(v.getId())); v.setCollected(CollectionUtils.isNotEmpty(collectMap.get(v.getId()))); v.setVideoUrl(cosUtil.getPreviewUrl(v.getVideoFileKey())); + v.setCoverUrl(cosUtil.getPreviewUrl(v.getCoverFileKey())); v.setSubscribeThisAuthor(subscribes.contains(v.getAuthorId())); }); } @@ -352,7 +354,7 @@ IPage<WxVideoVO> page = PageUtil.getPage(query, WxVideoVO.class); baseMapper.getAuthorVideoPage(page, query); for (WxVideoVO vo : page.getRecords()) { - vo.setCoverUrl(cosUtil.getPreviewUrl(vo.getCoverUrl())); + vo.setCoverUrl(cosUtil.getPreviewUrl(vo.getCoverFileKey())); vo.setVideoUrl(cosUtil.getPreviewUrl(vo.getVideoUrl())); } return Result.ok().data(page.getRecords()).total(page.getTotal()); @@ -363,10 +365,25 @@ IPage<WxVideoVO> page = PageUtil.getPage(query, WxVideoVO.class); baseMapper.getAuthorCollectVideoPage(page, query); for (WxVideoVO vo : page.getRecords()) { - vo.setCoverUrl(cosUtil.getPreviewUrl(vo.getCoverUrl())); + vo.setCoverUrl(cosUtil.getPreviewUrl(vo.getCoverFileKey())); vo.setVideoUrl(cosUtil.getPreviewUrl(vo.getVideoUrl())); vo.setCollected(Boolean.TRUE); } return Result.ok().data(page.getRecords()).total(page.getTotal()); } + + @Override + @Transactional(rollbackFor = Exception.class) + public Result homePageInfoEdit(VideoHomePageInfoForm form) { + new LambdaUpdateChainWrapper<>(memberService.getBaseMapper()) + .eq(Member::getId, UserContext.getCurrentUserId()) + .set(Member::getNickName, form.getNickName()) + .set(Member::getFace, form.getAvatar()) + .update(); + new LambdaUpdateChainWrapper<>(videoAccountService.getBaseMapper()) + .eq(VideoAccount::getUserId, UserContext.getCurrentUserId()) + .set(VideoAccount::getMotto, form.getMotto()) + .update(); + return Result.ok("淇濆瓨鎴愬姛"); + } } diff --git a/framework/src/main/java/cn/lili/modules/member/serviceimpl/MemberServiceImpl.java b/framework/src/main/java/cn/lili/modules/member/serviceimpl/MemberServiceImpl.java index 2fa2972..ddcd129 100644 --- a/framework/src/main/java/cn/lili/modules/member/serviceimpl/MemberServiceImpl.java +++ b/framework/src/main/java/cn/lili/modules/member/serviceimpl/MemberServiceImpl.java @@ -70,33 +70,47 @@ * @since 2021-03-29 14:10:16 */ @Service -@RequiredArgsConstructor public class MemberServiceImpl extends ServiceImpl<MemberMapper, Member> implements MemberService { /** * 浼氬憳token */ - private final MemberTokenGenerate memberTokenGenerate; + @Autowired + private MemberTokenGenerate memberTokenGenerate; /** * 鍟嗗token */ - private final StoreTokenGenerate storeTokenGenerate; + @Autowired + private StoreTokenGenerate storeTokenGenerate; /** * 鑱斿悎鐧诲綍 */ - private final ConnectService connectService; + @Autowired + private ConnectService connectService; /** * 搴楅摵 */ - private final StoreService storeService; + @Autowired + private StoreService storeService; /** * RocketMQ 閰嶇疆 */ - private final RocketmqCustomProperties rocketmqCustomProperties; - private final RocketMQTemplate rocketMQTemplate; - private final ApplicationEventPublisher applicationEventPublisher; - private final Cache cache; - private final VideoAccountService videoAccountService; + @Autowired + private RocketmqCustomProperties rocketmqCustomProperties; + + @Autowired + private RocketMQTemplate rocketMQTemplate; + + @Autowired + private ApplicationEventPublisher applicationEventPublisher; + /** + * 缂撳瓨 + */ + @Autowired + private Cache cache; + + @Autowired + private VideoAccountService videoAccountService; @Override public Member findByUsername(String userName) { diff --git a/framework/src/main/resources/mapper/lmk/VideoMapper.xml b/framework/src/main/resources/mapper/lmk/VideoMapper.xml index 22895cf..066d815 100644 --- a/framework/src/main/resources/mapper/lmk/VideoMapper.xml +++ b/framework/src/main/resources/mapper/lmk/VideoMapper.xml @@ -31,7 +31,7 @@ <result column="author_id" property="authorId" /> <result column="authorName" property="authorName" /> <result column="authorAvatar" property="authorAvatar" /> - <result column="cover_url" property="coverUrl" /> + <result column="cover_url" property="coverFileKey" /> <result column="video_file_key" property="videoFileKey" /> <result column="video_fit" property="videoFit" /> <result column="title" property="title" /> -- Gitblit v1.8.0