liujc 1 год назад
Родитель
Сommit
585fed3257

+ 11 - 0
mec-application/src/main/java/com/ym/mec/web/controller/TaskController.java

@@ -141,6 +141,9 @@ public class TaskController extends BaseController {
 	@Autowired
 	private ImPluginContext imPluginContext;
 
+    @Autowired
+    private UserMusicService userMusicService;
+
 	@GetMapping(value = "/initSysMusicCompareDayData")
 	public void initSysMusicCompareDayData(){
 		sysMusicCompareRecordService.initSysMusicCompareDayData();
@@ -743,4 +746,12 @@ public class TaskController extends BaseController {
         vipGroupService.closeLiveCourseRoom();
         return succeed();
     }
+
+    /**
+     * 作品过期设置
+     */
+    @GetMapping("/workOverdue")
+    public void workOverdue(){
+        userMusicService.workOverdue();
+    }
 }

+ 9 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/UserMusic.java

@@ -78,10 +78,18 @@ public class UserMusic implements Serializable {
 	@TableField(value = "del_flag_")
     private Boolean delFlag;
 
+
+    @ApiModelProperty("是否过期")
+    @TableField(value = "expire_flag_")
+    private Boolean expireFlag;
+
     @TableField(value = "submit_time_")
     private Date submitTime;
 
-	@TableField(value = "create_time_")
+    @TableField(value = "create_time_")
     private Date createTime;
 
+    @TableField(value = "update_time_")
+    private Date updateTime;
+
 }

+ 4 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/mapper/UserMusicMapper.java

@@ -25,4 +25,8 @@ public interface UserMusicMapper extends BaseMapper<UserMusic> {
 	List<UserMusicWrapper.UserMusic> selectPage(@Param("page") IPage<UserMusicWrapper.UserMusic> page, @Param("param") UserMusicWrapper.UserMusicQuery param);
 
     void updateStar(@Param("userMusicId") Long userMusicId);
+
+
+
+    void workOverdue(@Param("time") Integer time);
 }

+ 7 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/SysConfigService.java

@@ -445,6 +445,13 @@ public interface SysConfigService extends BaseService<Long, SysConfig> {
      */
     String USER_MUSIC_VIDEO_DEFAULT_URL = "user_music_video_default_url";
 
+
+
+    /**
+     * 草稿保存时长
+     */
+    String USER_MUSIC_DRAFT_TIME = "user_music_draft_time";
+
     static void checkActivityDate(String startTimeStr, String endTimeStr) {
         if(StringUtils.isEmpty(startTimeStr) || StringUtils.isEmpty(startTimeStr)){
             return;

+ 8 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/UserMusicService.java

@@ -63,4 +63,12 @@ public interface UserMusicService extends IService<UserMusic>  {
      *
      */
     IPage<UserMusicWrapper.UserMusic> selectPage(IPage<UserMusicWrapper.UserMusic> page, UserMusicWrapper.UserMusicQuery query, JwtUserInfo<?> userInfo);
+
+
+
+
+    /**
+     * 设置作品草稿过期
+     */
+    void workOverdue();
 }

+ 18 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/UserMusicServiceImpl.java

@@ -60,6 +60,9 @@ public class UserMusicServiceImpl extends ServiceImpl<UserMusicMapper, UserMusic
     @Autowired
     private SysConfigService sysConfigService;
 
+    @Autowired
+    private UserMusicMapper userMusicMapper;
+
 
     /**
      * 查询详情
@@ -331,4 +334,19 @@ public class UserMusicServiceImpl extends ServiceImpl<UserMusicMapper, UserMusic
 
         return userMusicIPage;
     }
+
+
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void workOverdue() {
+        SysConfig sysConfig = sysConfigService.findByParamName(SysConfigService.USER_MUSIC_DRAFT_TIME);
+        Integer time = 7;
+        try {
+            time = Integer.parseInt(sysConfig.getParanValue());
+        }catch (Exception e){
+            log.error("作品草稿过期时间配置错误");
+        }
+        userMusicMapper.workOverdue(time);
+    }
 }

+ 7 - 1
mec-biz/src/main/resources/config/mybatis/UserMusicMapper.xml

@@ -10,7 +10,7 @@
 		FROM user_music t
         left join sys_music_score t1 on t1.id_ = t.music_sheet_id_
         <where>
-            t.del_flag_ = 0
+            t.del_flag_ = 0 and t.expire_flag_ = 0
             <if test="param.keyword != null and param.keyword != ''">
                 and t1.name_ like concat('%', #{param.keyword}, '%')
             </if>
@@ -43,4 +43,10 @@
     <update id="updateStar">
         update user_music set like_num_ =(select count(1) from  user_music_star where  user_music_id_ = #{userMusicId}) where id_ = #{userMusicId}
     </update>
+
+
+
+    <update id="workOverdue">
+        update user_music set expire_flag_ = 1 where date_add(update_time_,interval #{time} day ) &lt;= now() and type_ = 'DRAFT' and expire_flag_ = 0
+    </update>
 </mapper>

+ 9 - 0
mec-client-api/src/main/java/com/ym/mec/task/TaskRemoteService.java

@@ -1,6 +1,7 @@
 package com.ym.mec.task;
 
 import com.ym.mec.common.config.FeignConfiguration;
+import com.ym.mec.common.entity.HttpResponseResult;
 import com.ym.mec.task.fallback.TaskRemoteServiceFallback;
 import org.springframework.cloud.openfeign.FeignClient;
 import org.springframework.web.bind.annotation.GetMapping;
@@ -315,4 +316,12 @@ public interface TaskRemoteService {
     // 直播课程提醒
     @GetMapping("task/closeLiveCourseRoom")
     void closeLiveCourseRoom() ;
+
+
+    /**
+     * 作品过期设置
+     */
+    @GetMapping("/task/workOverdue")
+    void workOverdue();
+
 }

+ 9 - 0
mec-client-api/src/main/java/com/ym/mec/task/fallback/TaskRemoteServiceFallback.java

@@ -1,5 +1,6 @@
 package com.ym.mec.task.fallback;
 
+import com.ym.mec.common.entity.HttpResponseResult;
 import com.ym.mec.task.TaskRemoteService;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -364,4 +365,12 @@ public class TaskRemoteServiceFallback implements TaskRemoteService {
     public void closeLiveCourseRoom() {
         logger.error("关闭直播间失败");
     }
+
+    /**
+     * 作品过期设置
+     */
+    @Override
+    public void workOverdue() {
+        logger.error("作品过期设置失败");
+    }
 }

+ 19 - 0
mec-task/src/main/java/com/ym/mec/task/jobs/UserMusicOverdueTask.java

@@ -0,0 +1,19 @@
+package com.ym.mec.task.jobs;
+
+import com.ym.mec.task.TaskRemoteService;
+import com.ym.mec.task.core.BaseTask;
+import com.ym.mec.task.core.TaskException;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+@Service
+public class UserMusicOverdueTask extends BaseTask {
+
+    @Autowired
+    private TaskRemoteService taskRemoteService;
+
+    @Override
+    public void execute() throws TaskException {
+        taskRemoteService.workOverdue();
+    }
+}