diff --git a/apollo-adminservice/src/main/java/com/ctrip/apollo/adminservice/controller/ItemController.java b/apollo-adminservice/src/main/java/com/ctrip/apollo/adminservice/controller/ItemController.java index 73271a907e48b283b85cb1ec778c80d2684216f5..726267098fc36a584c5c4b9eab8096e7a2ff5ed6 100644 --- a/apollo-adminservice/src/main/java/com/ctrip/apollo/adminservice/controller/ItemController.java +++ b/apollo-adminservice/src/main/java/com/ctrip/apollo/adminservice/controller/ItemController.java @@ -1,5 +1,6 @@ package com.ctrip.apollo.adminservice.controller; +import java.util.LinkedList; import java.util.List; import org.springframework.beans.factory.annotation.Autowired; @@ -59,7 +60,15 @@ public class ItemController { @PathVariable("clusterName") String clusterName, @PathVariable("namespaceName") String namespaceName) { List items = viewService.findItems(appId, clusterName, namespaceName); - return BeanUtils.batchTransform(ItemDTO.class, items); + List itemDTOs = new LinkedList<>(); + + for (Item item: items){ + ItemDTO itemDTO = BeanUtils.transfrom(ItemDTO.class, item); + itemDTO.setLastModifiedBy(item.getDataChangeLastModifiedBy()); + itemDTO.setLastModifiedTime(item.getDataChangeLastModifiedTime()); + itemDTOs.add(itemDTO); + } + return itemDTOs; } @RequestMapping("/items/{itemId}") diff --git a/apollo-biz/src/main/java/com/ctrip/apollo/biz/entity/BaseEntity.java b/apollo-biz/src/main/java/com/ctrip/apollo/biz/entity/BaseEntity.java index 1a47b3708ea1276b21e7afc568fb58f1db0905c8..40918416b55fee5bed24c7026c03f843a00aeac8 100644 --- a/apollo-biz/src/main/java/com/ctrip/apollo/biz/entity/BaseEntity.java +++ b/apollo-biz/src/main/java/com/ctrip/apollo/biz/entity/BaseEntity.java @@ -90,6 +90,7 @@ public abstract class BaseEntity { @PrePersist protected void prePersist() { if (this.dataChangeCreatedTime == null) dataChangeCreatedTime = new Date(); + if (this.dataChangeLastModifiedTime == null) dataChangeLastModifiedTime = new Date(); } @PreUpdate diff --git a/apollo-biz/src/main/java/com/ctrip/apollo/biz/service/ItemSetService.java b/apollo-biz/src/main/java/com/ctrip/apollo/biz/service/ItemSetService.java index f6013123fc12d09549e188b229927e913fcbe26e..7139794759026e40a59a4175d24ac4ee2dfd2f1e 100644 --- a/apollo-biz/src/main/java/com/ctrip/apollo/biz/service/ItemSetService.java +++ b/apollo-biz/src/main/java/com/ctrip/apollo/biz/service/ItemSetService.java @@ -27,7 +27,6 @@ public class ItemSetService { if (changeSet.getCreateItems() != null) { for (ItemDTO item : changeSet.getCreateItems()) { Item entity = BeanUtils.transfrom(Item.class, item); - entity.setDataChangeCreatedTime(new Date()); entity.setDataChangeCreatedBy(owner); entity.setDataChangeLastModifiedBy(owner); itemRepository.save(entity); diff --git a/apollo-core/src/main/java/com/ctrip/apollo/core/dto/ItemDTO.java b/apollo-core/src/main/java/com/ctrip/apollo/core/dto/ItemDTO.java index 66aafa58422879b4c34842c2589734516321fff8..8ebe0feaee5e8dae8e78d7d4f8cd77ab64aa4e14 100644 --- a/apollo-core/src/main/java/com/ctrip/apollo/core/dto/ItemDTO.java +++ b/apollo-core/src/main/java/com/ctrip/apollo/core/dto/ItemDTO.java @@ -1,5 +1,7 @@ package com.ctrip.apollo.core.dto; +import java.util.Date; + public class ItemDTO { private long id; @@ -14,6 +16,10 @@ public class ItemDTO { private int lineNum; + private String lastModifiedBy; + + private Date lastModifiedTime; + public ItemDTO() { } @@ -73,6 +79,21 @@ public class ItemDTO { this.lineNum = lineNum; } + public String getLastModifiedBy() { + return lastModifiedBy; + } + + public void setLastModifiedBy(String lastModifiedBy) { + this.lastModifiedBy = lastModifiedBy; + } + + public Date getLastModifiedTime() { + return lastModifiedTime; + } + + public void setLastModifiedTime(Date lastModifiedTime) { + this.lastModifiedTime = lastModifiedTime; + } @Override public String toString() { @@ -83,6 +104,8 @@ public class ItemDTO { ", value='" + value + '\'' + ", comment='" + comment + '\'' + ", lineNum=" + lineNum + + ", lastModifiedBy='" + lastModifiedBy + '\'' + + ", lastModifiedTime=" + lastModifiedTime + '}'; } } diff --git a/apollo-portal/src/main/resources/static/views/app.html b/apollo-portal/src/main/resources/static/views/app.html index 19add7be36ed6756f3b1c8cc699c19191d6887b2..99cd4a0191753cb5272135525b1af01270b3cc7c 100644 --- a/apollo-portal/src/main/resources/static/views/app.html +++ b/apollo-portal/src/main/resources/static/views/app.html @@ -148,10 +148,10 @@ {{config.item.comment}} - {{config.item.dataChangeLastModifiedBy}} + {{config.item.lastModifiedBy}} - {{config.item.dataChangeLastModifiedTime | date: 'yyyy-MM-dd HH:mm:ss'}} + {{config.item.lastModifiedTime | date: 'yyyy-MM-dd HH:mm:ss'}}