Commit bb97589a authored by tangtuo's avatar tangtuo

修改更新版权状态为定时任务更新

parent 9e217241
......@@ -5,7 +5,9 @@ import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cache.annotation.EnableCaching;
import org.springframework.scheduling.annotation.EnableScheduling;
@EnableScheduling
@EnableSwagger2Doc
@EnableCaching
@SpringBootApplication(scanBasePackages = {"com.fzm.admin", "com.fzm.common"})
......
......@@ -28,7 +28,7 @@ spring:
useGlobalDataSourceStat: true
redis:
host: 172.16.101.135
host: localhost
port: 6379
password: 123456
lettuce:
......
......@@ -92,6 +92,9 @@ public class CopyrightApply {
@ApiModelProperty(value = "申请时间")
private Date applyTime;
@ApiModelProperty(value = "版权申请后台核验通过时间")
private Date passTime;
@ApiModelProperty(value = "登记状态 0-待审核 1-登记成功 2-审核失败")
private Integer registerState;
......
......@@ -21,6 +21,9 @@ public class CopyrightDTO {
@ApiModelProperty("主键")
private Integer id;
@ApiModelProperty("草稿id")
private Integer draftId;
@NotBlank(message = "nft哈希不能为空")
@ApiModelProperty(value = "nft哈希")
private String nftHash;
......
......@@ -37,6 +37,9 @@ public class CopyrightRequest {
@Data
public static class CopyrightDetail {
@ApiModelProperty(value = "流水号")
private String serial_code;
@ApiModelProperty(value = "权利归属方式名称图片")
private String affilia_photo;
......@@ -144,6 +147,7 @@ public class CopyrightRequest {
private String works_type_name;
public CopyrightDetail(CopyrightVo copyrightVo, OpusCategory opusCategory) {
this.serial_code = copyrightVo.getSerialNum();
this.affilia_photo = copyrightVo.getAuthorityAscriptionProve();
this.agency_photo = copyrightVo.getRegisterEntrust();
this.author_photo = "";
......
......@@ -12,6 +12,8 @@ import javax.validation.constraints.NotNull;
@Data
public class DraftDTO {
private Integer id;
@NotBlank(message = "草稿内容不能为空")
private String content;
......
package com.fzm.common.entity.vo;
import cn.hutool.core.date.DateUtil;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fzm.common.entity.CopyrightApplyOwnerRelation;
import com.fzm.common.entity.CopyrightAuthor;
import com.fzm.common.entity.Nft;
import com.fzm.common.entity.User;
import com.fzm.common.enums.CopyrightApplyState;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.NoArgsConstructor;
import sun.management.counter.perf.PerfInstrumentation;
import java.util.Date;
import java.util.stream.Collectors;
......@@ -45,6 +42,8 @@ public class NftVo {
@ApiModelProperty("作者")
private String author;
@ApiModelProperty("简介")
private String synopsis;
@ApiModelProperty("文件哈希")
private String fileHash;
......@@ -83,15 +82,18 @@ public class NftVo {
@ApiModelProperty("著作权人")
private String copyrightOwner;
@JsonFormat(pattern = "yyyy-MM-dd")
@ApiModelProperty("作品完成时间")
private Date opusCompleteDate;
@JsonFormat(pattern = "yyyy-MM-dd")
@ApiModelProperty("作品首次发表时间")
private Date firstPublishDate;
@ApiModelProperty("登记时间")
private Date registerDate;
@JsonFormat(pattern = "yyyy-MM-dd")
@ApiModelProperty("存证时间")
private Date evidenceTime;
......@@ -123,6 +125,7 @@ public class NftVo {
this.nftHash = nft.getNftHash();
this.fileHash = nft.getFileHash();
this.evidenceTime = nft.getPublishTime();
this.synopsis = nft.getSynopsis();
this.copyright = (copyrightVo == null) ? null : new Copyright(copyrightVo);
}
......
......@@ -26,4 +26,7 @@ public interface CopyrightApplyMapper extends BaseMapper<CopyrightApply> {
List<CopyrightApply> list(@Param("userId") Integer userId, @Param("state") Integer state);
List<CopyrightApplyVo> pages(@Param("telephone") String telephone, @Param("serialNum") String serialNum, @Param("registerState") Integer registerState, @Param("startDate") DateTime startDate, @Param("endDate") DateTime endDate);
List<String> getSerialCodes();
}
......@@ -135,4 +135,12 @@ public interface CopyrightApplyService extends IService<CopyrightApply> {
* @return
*/
Boolean existsByNftHash(String nftHash);
/**
* 查询所有待更新状态的版权申请的流水号
*
* @return
*/
List<String> getSerialCodes();
}
......@@ -8,7 +8,6 @@ import cn.hutool.http.HttpUtil;
import cn.hutool.json.JSONUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.fzm.common.config.RabbitMQConfig;
import com.fzm.common.constant.SystemConstant;
import com.fzm.common.entity.*;
import com.fzm.common.entity.dto.CopyrightDTO;
......@@ -31,14 +30,16 @@ import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.redisson.Redisson;
import org.redisson.api.RLock;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.dao.DuplicateKeyException;
import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.*;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.TreeMap;
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.TimeUnit;
......@@ -92,10 +93,10 @@ public class CopyrightApplyServiceImpl extends ServiceImpl<CopyrightApplyMapper,
private CopyrightProperties copyrightProperties;
@Resource
private RabbitTemplate rabbitTemplate;
private Redisson redisson;
@Resource
private Redisson redisson;
private DraftService draftService;
@Override
......@@ -152,6 +153,10 @@ public class CopyrightApplyServiceImpl extends ServiceImpl<CopyrightApplyMapper,
CopyrightAuthorityRelation relation = new CopyrightAuthorityRelation(copyrightApply.getId(), authorityId);
relations.add(relation);
}
// 如果是从草稿箱进来的需要删除草稿信息
if (copyrightDTO.getDraftId() != null) {
draftService.removeById(copyrightDTO.getDraftId());
}
copyrightAuthorityRelationService.saveBatch(relations);
return copyrightApply.getId();
}
......@@ -369,10 +374,10 @@ public class CopyrightApplyServiceImpl extends ServiceImpl<CopyrightApplyMapper,
}
// 申请成功
String serial_code = copyrightResponse.getSerial_code();
rabbitTemplate.convertAndSend(RabbitMQConfig.COPYRIGHT_DIRECT, "copyright.apply", serial_code);
copyright.setSerialNum(serial_code);
copyright.setRegisterState(CopyrightApplyState.SUBMITTED.getCode());
copyright.setRejectReason("");
copyright.setPassTime(new Date());
return updateById(copyright);
} finally {
lock.unlock();
......@@ -434,4 +439,9 @@ public class CopyrightApplyServiceImpl extends ServiceImpl<CopyrightApplyMapper,
return count(queryWrapper) > 0;
}
@Override
public List<String> getSerialCodes() {
return copyrightApplyMapper.getSerialCodes();
}
}
......@@ -103,17 +103,9 @@ public class DraftServiceImpl extends ServiceImpl<DraftMapper, Draft> implements
@Override
public Integer saveDraft(DraftDTO draft) {
if (draft.getCopyrightId() != null) {
CopyrightApply copyright = copyrightApplyService.getById(draft.getCopyrightId());
if (copyright != null && copyright.getRegisterState().equals(CopyrightApplyState.WITHDRAW.getCode())) {
copyrightApplyService.removeById(draft.getCopyrightId());
copyrightAuthorService.delByCopyrightId(draft.getCopyrightId());
copyrightAuthorityRelationService.delByCopyrightId(draft.getCopyrightId());
}
}
Draft d = new Draft();
BeanUtil.copyProperties(draft, d, true);
this.save(d);
this.saveOrUpdate(d);
return d.getId();
}
}
......@@ -47,4 +47,10 @@
</where>
order by c.apply_time desc
</select>
<select id="getSerialCodes" resultType="java.lang.String">
SELECT serial_num
FROM tb_copyright_apply
WHERE register_state IN (2, 6, 7)
<!-- AND (NOW() - INTERVAL 24 HOUR) >= pass_time -->
</select>
</mapper>
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -550,3 +550,24 @@ alter table tb_nft add column evidencer varchar(20) not null default '' comment
ALTER TABLE tb_copyright_author MODIFY COLUMN `name` VARCHAR ( 100 ) NOT NULL DEFAULT '' COMMENT '作者姓名或名称';
ALTER TABLE tb_copyright_author MODIFY COLUMN `sign` VARCHAR ( 100 ) NOT NULL DEFAULT '' COMMENT '签名';
ALTER TABLE tb_copyright_owner MODIFY COLUMN `owner` VARCHAR ( 100 ) NOT NULL DEFAULT '' COMMENT '著作权人';
-- v2.0.1
ALTER TABLE tb_copyright_apply ADD COLUMN pass_time datetime DEFAULT NULL COMMENT '版权申请后台核验通过时间' AFTER apply_time;
UPDATE `tb_opus_category` SET `value` = '文字作品' WHERE `id` = 1;
UPDATE `tb_opus_category` SET `value` = '口述作品' WHERE `id` = 2;
UPDATE `tb_opus_category` SET `value` = '音乐作品' WHERE `id` = 3;
UPDATE `tb_opus_category` SET `value` = '戏剧作品' WHERE `id` = 4;
UPDATE `tb_opus_category` SET `value` = '曲艺作品' WHERE `id` = 5;
UPDATE `tb_opus_category` SET `value` = '舞蹈作品' WHERE `id` = 6;
UPDATE `tb_opus_category` SET `value` = '杂技艺术' WHERE `id` = 7;
UPDATE `tb_opus_category` SET `value` = '美术作品' WHERE `id` = 8;
UPDATE `tb_opus_category` SET `value` = '建筑作品' WHERE `id` = 9;
UPDATE `tb_opus_category` SET `value` = '摄影作品' WHERE `id` = 10;
UPDATE `tb_opus_category` SET `value` = '电影作品' WHERE `id` = 11;
UPDATE `tb_opus_category` SET `value` = '以类似摄制电影的方法创作的作品' WHERE `id` = 12;
UPDATE `tb_opus_category` SET `value` = '工程设计图、产品设计图' WHERE `id` = 13;
UPDATE `tb_opus_category` SET `value` = '地图、示意图' WHERE `id` = 14;
UPDATE `tb_opus_category` SET `value` = '模型作品' WHERE `id` = 15;
UPDATE `tb_opus_category` SET `value` = '录音制品' WHERE `id` = 16;
UPDATE `tb_opus_category` SET `value` = '录像制品' WHERE `id` = 17;
UPDATE `tb_opus_category` SET `value` = '其他作品' WHERE `id` = 18;
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment