Ver código fonte

作品改用uuid

wuweihao 3 anos atrás
pai
commit
7cb96bc3f3

+ 2 - 0
720yun_fd_manage/gis_application/src/main/resources/application-sit.properties

@@ -6,6 +6,8 @@ spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
 spring.datasource.druid.url=jdbc:mysql://127.0.0.1:3306/${project.name}?serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=utf8&characterSetResults=utf8
 spring.datasource.druid.username=root
 spring.datasource.druid.password=4dkk2020test%
+#spring.datasource.druid.password=JK123456%JIK
+
 
 
 # \u521D\u59CB\u8FDE\u63A5\u6570

+ 2 - 2
720yun_fd_manage/gis_common/src/main/java/com/gis/common/util/QrCodeUtils.java

@@ -55,7 +55,7 @@ public class QrCodeUtils {
     /**
      * 附带logo小图标二维码
      */
-    public String generateLogoQrCode(String url, String serverBasePath, String ossBasePath, String ossDomain, Long id){
+    public String generateLogoQrCode(String url, String serverBasePath, String ossBasePath, String ossDomain, String id){
         // 保存地址
 //        String time = DateUtil.format(new Date(), "yyyyMMdd_HHmmssSSS") + ".jpg";
 //        String dirType = "qrCode/";
@@ -102,7 +102,7 @@ public class QrCodeUtils {
      * @param logoPath 小logo图片地址
      * @return
      */
-    public String diyLogoQrCode(String url, String serverBasePath, String ossBasePath, String ossDomain, Long id, String logoPath){
+    public String diyLogoQrCode(String url, String serverBasePath, String ossBasePath, String ossDomain, String id, String logoPath){
 
         String savePath = serverBasePath + id;
 

+ 11 - 0
720yun_fd_manage/gis_common/src/main/java/com/gis/common/util/SnowFlakeUUidUtils.java

@@ -185,6 +185,17 @@ public class SnowFlakeUUidUtils {
     }
 
     /**
+     *
+     * @param prefix 前缀
+     * @return
+     */
+    public static String getUuid(String prefix){
+        String s = prefix.toUpperCase();
+        return generaUUid(null, null, s);
+
+    }
+
+    /**
      * <p>
      * 数据标识id部分
      * </p>

+ 1 - 1
720yun_fd_manage/gis_domain/src/main/java/com/gis/domain/dto/WorkDto.java

@@ -12,7 +12,7 @@ import javax.validation.constraints.NotBlank;
 public class WorkDto {
 
     @ApiModelProperty(value = "id, 修改时必须传,新增忽略", name = "id")
-    private Long id;
+    private String id;
 
 //    @ApiModelProperty(value = "名称")
 //    private String name;

+ 40 - 0
720yun_fd_manage/gis_domain/src/main/java/com/gis/domain/entity/BaseStrEntity.java

@@ -0,0 +1,40 @@
+package com.gis.domain.entity;
+
+import com.alibaba.fastjson.annotation.JSONField;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.persistence.*;
+import java.util.Date;
+
+@Data
+@MappedSuperclass
+public abstract class BaseStrEntity {
+
+    @Id
+    @Column(name = "id")
+    @ApiModelProperty(value = "对象ID")
+    private String id;
+
+    @ApiModelProperty(value = "创建时间")
+    @Temporal(TemporalType.TIMESTAMP)
+    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
+    private Date createTime;
+
+    @ApiModelProperty(value = "修改时间")
+    @Temporal(TemporalType.TIMESTAMP)
+    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
+    private Date updateTime;
+
+    /**
+     * 用来批量操作的
+     * 0代表未删除 , 1代表已经删除,默认写0
+     * 需要使用对象类型
+     */
+    @JsonIgnore
+    @JSONField(serialize = false)
+    private Integer isDelete;
+
+
+}

+ 1 - 1
720yun_fd_manage/gis_domain/src/main/java/com/gis/domain/entity/WorkEntity.java

@@ -14,7 +14,7 @@ import java.io.Serializable;
 @Data
 @Entity
 @Table(name = "tb_work")
-public class WorkEntity extends BaseEntity implements Serializable {
+public class WorkEntity extends BaseStrEntity implements Serializable {
 
     private static final long serialVersionUID = 6827754544317282072L;
     @ApiModelProperty(value = "名称")

+ 17 - 0
720yun_fd_manage/gis_mapper/src/main/java/com/gis/mapper/IBaseStrMapper.java

@@ -0,0 +1,17 @@
+package com.gis.mapper;
+
+import com.gis.domain.entity.BaseStrEntity;
+import tk.mybatis.mapper.common.BaseMapper;
+import tk.mybatis.mapper.common.ConditionMapper;
+import tk.mybatis.mapper.common.IdsMapper;
+import tk.mybatis.mapper.common.special.InsertListMapper;
+
+import java.io.Serializable;
+
+/**
+ * Created by owen on 2020/2/18 0018 11:27
+ */
+
+public interface IBaseStrMapper<T extends BaseStrEntity, ID extends Serializable> extends BaseMapper<T>,
+        ConditionMapper<T>, IdsMapper<T>, InsertListMapper<T> {
+}

+ 1 - 1
720yun_fd_manage/gis_mapper/src/main/java/com/gis/mapper/WorkMapper.java

@@ -12,7 +12,7 @@ import java.util.List;
 
 @Component
 @Mapper
-public interface WorkMapper extends IBaseMapper<WorkEntity, Long> {
+public interface WorkMapper extends IBaseStrMapper<WorkEntity, Long> {
 
 
 

+ 205 - 0
720yun_fd_manage/gis_service/src/main/java/com/gis/service/impl/IBaseStrServiceImpl.java

@@ -0,0 +1,205 @@
+package com.gis.service.impl;
+
+import com.gis.common.constant.ConfigConstant;
+import com.gis.common.shiro.JwtUtil;
+import com.gis.domain.dto.PageDto;
+import com.gis.domain.entity.BaseEntity;
+import com.gis.domain.entity.BaseStrEntity;
+import com.gis.mapper.IBaseMapper;
+import com.gis.mapper.IBaseStrMapper;
+import com.gis.service.IBaseService;
+import com.github.pagehelper.PageHelper;
+import com.github.pagehelper.PageInfo;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.StringUtils;
+import tk.mybatis.mapper.entity.Condition;
+
+import javax.servlet.http.HttpServletRequest;
+import java.io.Serializable;
+import java.lang.reflect.ParameterizedType;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * Created by owen on 2020/2/18 0018 11:22
+ */
+@Transactional
+public abstract class IBaseStrServiceImpl<T extends BaseStrEntity, ID extends Serializable> implements IBaseService<T, ID> {
+
+    @Autowired
+    public ConfigConstant configConstant;
+
+    @Autowired
+    protected HttpServletRequest request;
+
+    public abstract IBaseStrMapper<T, ID> getBaseMapper();
+
+    private Class<T> entityClass;
+
+    public IBaseStrServiceImpl(){
+        ParameterizedType pt = (ParameterizedType) this.getClass().getGenericSuperclass();
+        entityClass = (Class<T>) pt.getActualTypeArguments()[0];
+    }
+
+    @Override
+    public T findById(ID id){
+        Condition condition = new Condition(entityClass);
+        condition.createCriteria().andEqualTo("id", id);
+        condition.and().andEqualTo("isDelete", 0);
+        List<T> ts = getBaseMapper().selectByCondition(condition);
+        if (ts != null && ts.size() > 0){
+            return ts.get(0);
+        }else{
+            return null;
+        }
+    }
+
+    @Override
+    public T findOne(T entity){
+        entity.setIsDelete(0);
+        return getBaseMapper().selectOne(entity);
+    }
+
+    @Override
+    public List<T> findAll(){
+        Condition condition = new Condition(entityClass);
+        condition.createCriteria().andEqualTo("isDelete", 0);
+        return getBaseMapper().selectByCondition(condition);
+    }
+
+    /**
+     * 根据主键字符串进行查询,类中只有存在一个带有@Id注解的字段
+     *
+     * @param ids 如 "1,2,3,4"
+     * @return
+     */
+    @Override
+    public List<T> findByIds(String ids){
+        return getBaseMapper().selectByIds(ids);
+    }
+
+    @Override
+    public long count(){
+        List<T> all = this.findAll();
+        if (all != null && all.size() > 0){
+            return all.size();
+        }
+        return 0;
+    }
+
+    @Override
+    public boolean exists(ID id){
+        return getBaseMapper().existsWithPrimaryKey(id);
+    }
+
+    @Override
+    public int save(T entity) {
+        //migration之后要删掉判断
+            entity.setCreateTime(new Date());
+            entity.setUpdateTime(new Date());
+        return getBaseMapper().insertSelective(entity);
+    }
+
+    @Override
+    public int update(T entity) {
+        //migration之后要删掉判断
+            entity.setUpdateTime(new Date());
+        return getBaseMapper().updateByPrimaryKeySelective(entity);
+    }
+
+    @Override
+    public int updateAll(T entity) {
+        //migration之后要删掉判断
+            entity.setUpdateTime(new Date());
+        return getBaseMapper().updateByPrimaryKey(entity);
+    }
+
+    @Override
+    public int deleteById(ID id) {
+        return getBaseMapper().deleteByPrimaryKey(id);
+    }
+
+    @Override
+    public int deleteByIds(String ids){
+        return getBaseMapper().deleteByIds(ids);
+    }
+
+    @Override
+    public int delete(T entity){
+        return getBaseMapper().delete(entity);
+    }
+
+    public List<T> findAll(Condition condition){
+        condition.and().andEqualTo("isDelete", 0);
+        return getBaseMapper().selectByCondition(condition);
+    }
+
+    public List<T> findAll(Condition condition, String orderBy){
+        condition.and().andEqualTo("isDelete", 0);
+        if (!StringUtils.isEmpty(orderBy)){
+            PageHelper.orderBy(orderBy);
+        }
+        return getBaseMapper().selectByCondition(condition);
+    }
+
+    public PageInfo<T> findAll(int pageNum, int pageSize){
+        PageHelper.startPage(pageNum, pageSize);
+        return new PageInfo<>(this.findAll());
+    }
+
+    public PageInfo<T> findAll(int pageNum, int pageSize, String orderBy){
+        PageHelper.startPage(pageNum, pageSize);
+        if (!StringUtils.isEmpty(orderBy)){
+            PageHelper.orderBy(orderBy);
+        }
+        return new PageInfo<>(this.findAll());
+    }
+
+    public PageInfo<T> findAll(Condition condition, int pageNum, int pageSize){
+        PageHelper.startPage(pageNum, pageSize);
+        return new PageInfo<>(this.findAll(condition));
+    }
+
+    public PageInfo<T> findAll(Condition condition, int pageNum, int pageSize, String orderBy){
+        PageHelper.startPage(pageNum, pageSize);
+        if (!StringUtils.isEmpty(orderBy)){
+            PageHelper.orderBy(orderBy);
+        }
+        return new PageInfo<>(this.findAll(condition));
+    }
+
+
+    /**
+     * 设置请求分页数据
+     */
+    public void startPage(PageDto param){
+        Integer pageNum = param.getPageNum();
+        Integer pageSize = param.getPageSize();
+        if (pageNum == null || pageNum <= 0) {
+            pageNum = 0;
+        }
+
+        if (pageSize == null || pageSize <= 0) {
+            pageSize = 10;
+        }
+
+        PageHelper.startPage(pageNum, pageSize);
+
+    }
+
+
+    public String getUserNameForToken(){
+        /** 获取header token */
+        String token = request.getHeader("token");
+        if (org.apache.commons.lang3.StringUtils.isNotBlank(token)){
+            return JwtUtil.getUsername(token);
+        }
+        return null;
+    }
+
+    public String getToken(){
+        /** 获取header token */
+        return request.getHeader("token");
+    }
+}

+ 1 - 1
720yun_fd_manage/gis_service/src/main/java/com/gis/service/impl/TestServiceImpl.java

@@ -108,7 +108,7 @@ public class TestServiceImpl implements TestService {
         HashMap<String, String> iconMap = new HashMap<>();
         HashSet<Object> sceneCodes = new HashSet<>();
         for (WorkEntity entity : list) {
-            Long id = entity.getId();
+            String id = entity.getId();
             log.info("处理该作品开始: {}", id);
             getHandleSceneCode(entity.getSceneCodes(), iconMap, sceneCodes);
             log.info("处理该作品结束: {}", id);

+ 11 - 10
720yun_fd_manage/gis_service/src/main/java/com/gis/service/impl/WorkServiceImpl.java

@@ -16,10 +16,7 @@ import com.gis.domain.entity.SceneEntity;
 import com.gis.domain.entity.WorkEntity;
 import com.gis.domain.tree.CatalogTree;
 import com.gis.domain.vo.WorkInfoVo;
-import com.gis.mapper.CatalogMapper;
-import com.gis.mapper.SceneMapper;
-import com.gis.mapper.WorkMapper;
-import com.gis.mapper.IBaseMapper;
+import com.gis.mapper.*;
 import com.gis.service.CatalogService;
 import com.gis.service.SceneService;
 import com.gis.service.WorkService;
@@ -54,7 +51,7 @@ import java.util.stream.Stream;
 @Slf4j
 @Service
 //@Transactional
-public class WorkServiceImpl extends IBaseServiceImpl<WorkEntity, Long> implements WorkService {
+public class WorkServiceImpl extends IBaseStrServiceImpl<WorkEntity, Long> implements WorkService {
 
     @Autowired
     private WorkMapper entityMapper;
@@ -91,7 +88,7 @@ public class WorkServiceImpl extends IBaseServiceImpl<WorkEntity, Long> implemen
 
 
     @Override
-    public IBaseMapper<WorkEntity, Long> getBaseMapper() {
+    public IBaseStrMapper<WorkEntity, Long> getBaseMapper() {
         return this.entityMapper;
     }
 
@@ -109,8 +106,10 @@ public class WorkServiceImpl extends IBaseServiceImpl<WorkEntity, Long> implemen
      */
     @Override
     public Result<WorkEntity> entitySave(WorkDto param) {
-        Long id = param.getId();
-        WorkEntity entity = this.findById(id);
+        String id = param.getId();
+//        WorkEntity entity = this.findById(id);
+
+        WorkEntity entity = entityMapper.selectByPrimaryKey(id);
 
         if (entity == null) {
             return Result.failure("对象不存在");
@@ -127,7 +126,9 @@ public class WorkServiceImpl extends IBaseServiceImpl<WorkEntity, Long> implemen
     @Override
     public Result<WorkEntity> entityAdd() {
 
+
         WorkEntity entity = new WorkEntity();
+        entity.setId(SnowFlakeUUidUtils.getUuid("WK"));
         entity.setUserId(getUserNameForToken());
         entity.setStatus(0);
         Date date = new Date();
@@ -137,7 +138,7 @@ public class WorkServiceImpl extends IBaseServiceImpl<WorkEntity, Long> implemen
 //        entityMapper.insertWork(entity);
         this.save(entity);
 
-        Long id = entity.getId();
+        String id = entity.getId();
         log.info("创建对象完成: {}", id);
 
 
@@ -393,7 +394,7 @@ public class WorkServiceImpl extends IBaseServiceImpl<WorkEntity, Long> implemen
     /**
      * 更新二维码
      */
-    private Boolean updateQrCode(Long id, String logoUrl) {
+    private Boolean updateQrCode(String id, String logoUrl) {
 
         // 网络下载logo图片
         logoUrl = logoUrl + "?m=" + System.currentTimeMillis();