Commit c3ec8696 by 阳浪

投稿编号自动生成

parent 4a5f8fa3
package com.yizhi.site.application.service.impl;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.plugins.Page;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.yizhi.application.orm.id.IdGenerator;
import com.yizhi.comment.application.feign.PdfPagesClient;
import com.yizhi.core.application.cache.RedisCache;
import com.yizhi.core.application.context.ContextHolder;
import com.yizhi.core.application.publish.CloudEventPublisher;
import com.yizhi.site.application.constant.SiteConstant;
import com.yizhi.site.application.domain.DataClassification;
import com.yizhi.site.application.domain.ProtalPlate;
......@@ -15,14 +15,18 @@ import com.yizhi.site.application.mapper.*;
import com.yizhi.site.application.service.*;
import com.yizhi.site.application.vo.domain.InformationClassify;
import com.yizhi.site.application.vo.site.*;
import com.yizhi.util.application.date.DateUtil;
import lombok.extern.log4j.Log4j2;
import org.apache.commons.collections.CollectionUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.core.ValueOperations;
import org.springframework.stereotype.Service;
import java.text.NumberFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
......@@ -44,28 +48,14 @@ public class PublicationServiceImpl extends ServiceImpl<PublicationMapper, Publi
@Autowired
private PublicationMapper publicationMapper;
@Autowired
private PortalBannerService portalBannerService;
@Autowired
private DataClassificationService dataClassificationService;
@Autowired
private ProtalPlateService protalPlateService;
@Autowired
private PortalTerminalMapper portalTerminalMapper;
@Autowired
private HomeAnnouncementMapper homeAnnouncementMapper;
@Autowired
private CloudEventPublisher cloudEventPublisher;
@Autowired
private PdfPagesClient pdfPagesClient;
@Autowired
private ITrInformationReadNumberService informationReadNumberService;
@Autowired
private InformationClassifyMapper informationClassifyMapper;
@Autowired
private RedisTemplate redisTemplate;
@Override
public List<Publication> selectPublication(Long typeTwo) {
......@@ -141,6 +131,7 @@ public class PublicationServiceImpl extends ServiceImpl<PublicationMapper, Publi
public Long insertPublication(Publication publication) {
Long id = idGenerator.generate();
publication.setId(id);
publication.setNumber(getNumber());
publication.setSubmitTime(new Date());
publication.setState(SiteConstant.TWO);
this.insert(publication);
......@@ -477,4 +468,25 @@ public class PublicationServiceImpl extends ServiceImpl<PublicationMapper, Publi
}
return null;
}
public String getNumber(){
Long numVal = getIncrement("publication:number");
NumberFormat formatter = NumberFormat.getNumberInstance();
formatter.setMinimumIntegerDigits(4);
formatter.setGroupingUsed(false);
String idStr = formatter.format(numVal);
return String.join(DateUtil.format(new Date(),"yyyy"), "TG", idStr);
}
/**
* 获取自增数据
*
* @param key
* @return
*/
public Long getIncrement(String key) {
ValueOperations<String, Long> valueOperations = redisTemplate.opsForValue();
Long t = redisTemplate.getExpire(key);
return ObjectUtil.isEmpty(t) ? valueOperations.increment(key) : valueOperations.increment(key,t);
}
}
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