diff --git a/src/assets/lang/en.ts b/src/assets/lang/en.ts
index b9df4b0..1318f78 100644
--- a/src/assets/lang/en.ts
+++ b/src/assets/lang/en.ts
@@ -171,8 +171,8 @@
   defaultOrder: 'Default Order',
   chartType: 'Chart Type',
   currentDepth: 'Current Depth',
-  tagsTip:
-    'Only tags defined in the core/default/searchableTagKeys are searchable. Check more details on the Configuration Vocabulary page',
+  tagsTip: `'Only tags defined in the core/default/searchableTagKeys are searchable.
+  Check more details on the Configuration Vocabulary page'`,
   tagsLink: 'Configuration Vocabulary page',
   addTag: 'Please add a tag',
   log: 'Log',
diff --git a/src/components/rk-date-calendar.vue b/src/components/rk-date-calendar.vue
index e083243..51b1f2c 100755
--- a/src/components/rk-date-calendar.vue
+++ b/src/components/rk-date-calendar.vue
@@ -121,7 +121,7 @@
         </div>
       </div>
     </div>
-    <div :class="`${pre}-foot`" v-if="m === 'H'">
+    <div :class="`${pre}-foot`">
       <div :class="`${pre}-hour`">
         <a
           :title="local.hourTip"
@@ -136,13 +136,15 @@
           :class="{ on: showMinutes }"
           >{{ minute | dd }}</a
         >
-        <span>:</span>
-        <a
-          :title="local.secondTip"
-          @click="(showSeconds = !showSeconds), (showHours = showMinutes = false)"
-          :class="{ on: showSeconds }"
-          >{{ second | dd }}</a
-        >
+        <span v-show="m !== 'D'">
+          <span>:</span>
+          <a
+            :title="local.secondTip"
+            @click="(showSeconds = !showSeconds), (showHours = showMinutes = false)"
+            :class="{ on: showSeconds }"
+            >{{ second | dd }}</a
+          >
+        </span>
       </div>
     </div>
   </div>
diff --git a/src/components/rk-footer-time.vue b/src/components/rk-footer-time.vue
index cf4ad1a..b16a679 100644
--- a/src/components/rk-footer-time.vue
+++ b/src/components/rk-footer-time.vue
@@ -15,7 +15,7 @@
 <template>
   <div>
     <span class="rk-time-tips" v-show="timeRange">{{ $t('timeTips') }}</span>
-    <RkDate class="mr-10" v-model="time" position="top" format="YYYY-MM-DD HH:mm:ss" />
+    <RkDate class="mr-10" v-model="time" position="top" format="YYYY-MM-DD HH:mm" />
   </div>
 </template>
 
diff --git a/src/graph/query/dashboard.ts b/src/graph/query/dashboard.ts
index bef85a7..219577e 100644
--- a/src/graph/query/dashboard.ts
+++ b/src/graph/query/dashboard.ts
@@ -33,9 +33,11 @@
 
 export const mutationAddTemplate = `mutation mutationAddTemplate(${addTemplate.variable}) {${addTemplate.query}}`;
 
-export const mutationChangeTemplate = `mutation mutationChangeTemplate(${changeTemplate.variable}) {${changeTemplate.query}}`;
+export const mutationChangeTemplate = `mutation mutationChangeTemplate(${changeTemplate.variable}) {
+  ${changeTemplate.query}}`;
 
-export const mutationDisableTemplate = `mutation mutationDisableTemplate(${disableTemplate.variable}) {${disableTemplate.query}}`;
+export const mutationDisableTemplate = `mutation mutationDisableTemplate(${disableTemplate.variable}) {
+  ${disableTemplate.query}}`;
 
 export const queryGetAllTemplates = `query queryGetAllTemplates {${getAllTemplates.query}}`;
 
@@ -43,7 +45,8 @@
 
 export const readSampledRecords = `query queryData(${querySampledRecords.variable}) {${querySampledRecords.query}}`;
 
-export const readLabeledMetricsValues = `query queryData(${queryLabeledMetricsValues.variable}) {${queryLabeledMetricsValues.query}}`;
+export const readLabeledMetricsValues = `query queryData(${queryLabeledMetricsValues.variable}) {
+  ${queryLabeledMetricsValues.query}}`;
 
 export const sortMetrics = `query queryData(${querySortMetrics.variable}) {${querySortMetrics.query}}`;
 
diff --git a/src/graph/query/log.ts b/src/graph/query/log.ts
index 66ff97e..e9a17de 100644
--- a/src/graph/query/log.ts
+++ b/src/graph/query/log.ts
@@ -17,6 +17,7 @@
 
 import { QueryBrowserErrorLogs, QueryServiceLogs, QueryLogsByKeywords } from '../fragments/log';
 
-export const queryBrowserErrorLogs = `query queryBrowserErrorLogs(${QueryBrowserErrorLogs.variable}) {${QueryBrowserErrorLogs.query}}`;
+export const queryBrowserErrorLogs = `query queryBrowserErrorLogs(${QueryBrowserErrorLogs.variable}) {
+  ${QueryBrowserErrorLogs.query}}`;
 export const queryServiceLogs = `query queryLogs(${QueryServiceLogs.variable}) {${QueryServiceLogs.query}}`;
 export const queryLogsByKeywords = `query queryLogsByKeywords {${QueryLogsByKeywords.query}}`;
diff --git a/src/graph/query/profile.ts b/src/graph/query/profile.ts
index cc4a297..73665e5 100644
--- a/src/graph/query/profile.ts
+++ b/src/graph/query/profile.ts
@@ -27,8 +27,10 @@
 
 export const saveProfileTask = `mutation createProfileTask(${CreateProfileTask.variable}) {${CreateProfileTask.query}}`;
 
-export const getProfileTaskList = `query getProfileTaskList(${GetProfileTaskList.variable}) {${GetProfileTaskList.query}}`;
+export const getProfileTaskList = `query getProfileTaskList(${GetProfileTaskList.variable}) {
+  ${GetProfileTaskList.query}}`;
 
-export const getProfileTaskSegmentList = `query getProfileTaskSegmentList(${GetProfileTaskSegmentList.variable}) {${GetProfileTaskSegmentList.query}}`;
+export const getProfileTaskSegmentList = `query getProfileTaskSegmentList(${GetProfileTaskSegmentList.variable}) {
+  ${GetProfileTaskSegmentList.query}}`;
 
 export const getProfileAnalyze = `query getProfileAnalyze(${GetProfileAnalyze.variable}) {${GetProfileAnalyze.query}}`;
diff --git a/src/graph/query/topology.ts b/src/graph/query/topology.ts
index d1bf631..e4d8ec3 100644
--- a/src/graph/query/topology.ts
+++ b/src/graph/query/topology.ts
@@ -75,7 +75,8 @@
 export const queryTopoServiceDetail = `query queryTopoServiceDetail(
   ${TopoServiceDetail.variable}) {${TopoServiceDetail.query}}`;
 
-export const queryEndpointTopology = `query queryEndpointTopology(${endpointTopology.variable}) {${endpointTopology.query}}`;
+export const queryEndpointTopology = `query queryEndpointTopology(${endpointTopology.variable}) {
+  ${endpointTopology.query}}`;
 
 export const queryTopoEndpointDependencyMetrics = `query queryTopoEndpointDependencyMetrics(
   ${TopoEndpointDependencyMetrics.variable}) {${TopoEndpointDependencyMetrics.query}}`;
diff --git a/src/views/components/topology/chart/topo.vue b/src/views/components/topology/chart/topo.vue
index 5b97bc3..7f78c35 100644
--- a/src/views/components/topology/chart/topo.vue
+++ b/src/views/components/topology/chart/topo.vue
@@ -169,8 +169,10 @@
         simulationSkip(d3, this.simulation, this.ticked);
       },
       ticked() {
-        this.link.attr('d', (d) => `M${d.source.x} ${d.source.y} Q ${(d.source.x + d.target.x) / 2} ${(d.target.y + d.source.y) / 2 - 90} ${d.target.x} ${d.target.y}`);
-        this.anchor.attr('transform', (d) => `translate(${(d.source.x + d.target.x) / 2}, ${(d.target.y + d.source.y) / 2 - 45})`);
+        this.link.attr('d', (d) => `M${d.source.x} ${d.source.y} Q ${(d.source.x
+        + d.target.x) / 2} ${(d.target.y + d.source.y) / 2 - 90} ${d.target.x} ${d.target.y}`);
+        this.anchor.attr('transform', (d) => `translate(${(d.source.x +
+        d.target.x) / 2}, ${(d.target.y + d.source.y) / 2 - 45})`);
         this.node.attr('transform', (d) => `translate(${d.x - 22},${d.y - 22})`);
       },
       dragstart(d) {
diff --git a/src/views/components/trace/trace-search.vue b/src/views/components/trace/trace-search.vue
index 0b3354f..de5c6d4 100644
--- a/src/views/components/trace/trace-search.vue
+++ b/src/views/components/trace/trace-search.vue
@@ -75,7 +75,7 @@
         </div>
         <div>
           <span class="sm b grey mr-5">{{ this.$t('timeRange') }}:</span>
-          <RkDate class="sm" v-model="time" position="bottom" format="YYYY-MM-DD HH:mm:ss" />
+          <RkDate class="sm" v-model="time" position="bottom" format="YYYY-MM-DD HH:mm" />
         </div>
       </div>
       <div class="flex-h">
