This commit is contained in:
jiangh277
2025-08-04 16:51:13 +08:00
parent f8fb9b561c
commit eba0eb085e
41 changed files with 451 additions and 73 deletions

View File

@@ -1,6 +1,6 @@
package com.timeline.story.controller;
import com.timeline.response.ResponseEntity;
import com.timeline.common.response.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

View File

@@ -1,6 +1,6 @@
package com.timeline.story.controller;
import com.timeline.response.ResponseEntity;
import com.timeline.common.response.ResponseEntity;
import com.timeline.story.entity.Story;
import com.timeline.story.service.StoryService;
import com.timeline.story.vo.StoryVo;

View File

@@ -1,13 +1,12 @@
package com.timeline.story.controller;
import com.alibaba.fastjson.JSONObject;
import com.timeline.response.ResponseEntity;
import com.timeline.common.response.ResponseEntity;
import com.timeline.story.entity.StoryItem;
import com.timeline.story.service.StoryItemService;
import com.timeline.story.vo.StoryItemVo;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;

View File

@@ -1,6 +1,6 @@
package com.timeline.story.dao;
import com.timeline.dto.CommonRelationDTO;
import com.timeline.common.dto.CommonRelationDTO;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;

View File

@@ -18,4 +18,5 @@ public class Story {
private Integer isDelete;
private String ownerId;
private String status;
private String logo;
}

View File

@@ -1,20 +1,19 @@
package com.timeline.story.feign;
import com.timeline.response.ResponseEntity;
import com.timeline.common.response.ResponseEntity;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.core.io.InputStreamResource;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import java.io.InputStream;
import java.util.List;
@FeignClient(name = "timeline.file", url = "${file.service.url}")
public interface FileServiceClient {
@PostMapping(value = "/upload-cover", consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
ResponseEntity<String> uploadCover(@RequestPart("cover") MultipartFile cover);
@PostMapping(value = "/upload-image", consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
ResponseEntity<String> uploadCover(@RequestPart("image") MultipartFile image);
@GetMapping("/download/cover/{coverKey}")
InputStreamResource downloadCover(@PathVariable String coverKey);

View File

@@ -1,18 +1,18 @@
package com.timeline.story.service.impl;
import com.timeline.constants.CommonConstants;
import com.timeline.common.constants.CommonConstants;
import com.timeline.story.dao.CommonRelationMapper;
import com.timeline.dto.CommonRelationDTO;
import com.timeline.exception.CustomException;
import com.timeline.response.ResponseEntity;
import com.timeline.response.ResponseEnum;
import com.timeline.common.dto.CommonRelationDTO;
import com.timeline.common.exception.CustomException;
import com.timeline.common.response.ResponseEntity;
import com.timeline.common.response.ResponseEnum;
import com.timeline.story.dao.StoryItemMapper;
import com.timeline.story.entity.StoryItem;
import com.timeline.story.feign.FileServiceClient;
import com.timeline.story.service.StoryItemService;
import com.timeline.story.vo.StoryItemVo;
import com.timeline.story.vo.StoryItemWithCoverVo;
import com.timeline.utils.IdUtils;
import com.timeline.common.utils.IdUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.core.io.InputStreamResource;

View File

@@ -1,12 +1,12 @@
package com.timeline.story.service.impl;
import com.timeline.exception.CustomException;
import com.timeline.response.ResponseEnum;
import com.timeline.common.exception.CustomException;
import com.timeline.common.response.ResponseEnum;
import com.timeline.story.entity.Story;
import com.timeline.story.dao.StoryMapper;
import com.timeline.story.service.StoryService;
import com.timeline.story.vo.StoryVo;
import com.timeline.utils.IdUtils;
import com.timeline.common.utils.IdUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -32,6 +32,7 @@ public class StoryServiceImpl implements StoryService {
story.setStatus(storyVo.getStatus());
story.setCreateTime(LocalDateTime.now());
story.setUpdateTime(LocalDateTime.now());
story.setLogo(storyVo.getLogo());
story.setIsDelete(0);
storyMapper.insert(story);
} catch (Exception e) {
@@ -52,6 +53,7 @@ public class StoryServiceImpl implements StoryService {
story.setDescription(storyVo.getDescription());
story.setStatus(storyVo.getStatus());
story.setUpdateTime(LocalDateTime.now());
story.setLogo(storyVo.getLogo());
storyMapper.update(story);
}

View File

@@ -10,4 +10,5 @@ public class StoryVo {
private String title;
private String description;
private String status;
private String logo;
}

View File

@@ -5,8 +5,8 @@
<mapper namespace="com.timeline.story.dao.StoryMapper">
<insert id="insert">
INSERT INTO story (instance_id, title, description, owner_id, status)
VALUES (#{instanceId}, #{title}, #{description}, #{ownerId}, #{status})
INSERT INTO story (instance_id, title, description, owner_id, status, logo)
VALUES (#{instanceId}, #{title}, #{description}, #{ownerId}, #{status}, #{logo})
</insert>
<update id="update">
@@ -15,7 +15,8 @@
description = #{description},
update_id = #{updateId},
status = #{status},
update_time = NOW()
update_time = NOW(),
logo = #{logo}
WHERE instance_id = #{instanceId}
</update>