ソースを参照

HistorySynchronizer

MaxKey 4 年 前
コミット
0306cc54bd

+ 16 - 0
maxkey-core/src/main/java/org/maxkey/entity/HistorySynchronizer.java

@@ -37,6 +37,9 @@ public class HistorySynchronizer  extends JpaBaseEntity  implements Serializable
     @Column
     String result;
     
+    String startDate;
+    String endDate;
+    
     public String getId() {
         return id;
     }
@@ -88,6 +91,19 @@ public class HistorySynchronizer  extends JpaBaseEntity  implements Serializable
     public HistorySynchronizer() {
         super();
     }
+    
+    public String getStartDate() {
+        return startDate;
+    }
+    public void setStartDate(String startDate) {
+        this.startDate = startDate;
+    }
+    public String getEndDate() {
+        return endDate;
+    }
+    public void setEndDate(String endDate) {
+        this.endDate = endDate;
+    }
     @Override
     public String toString() {
         StringBuilder builder = new StringBuilder();

+ 15 - 0
maxkey-persistence/src/main/resources/org/maxkey/persistence/mapper/xml/mysql/HistorySynchronizerMapper.xml

@@ -6,6 +6,21 @@
     	<if test="id != null and id != ''">
 			and	id	=	#{id}
 		</if> 
+		<if test="syncId != null and syncId != ''">
+            and syncid  =   #{syncId}
+        </if> 
+        <if test="objectName != null and objectName != ''">
+            and objectname  =   #{objectName}
+        </if> 
+        <if test="result != null and result != ''">
+            and result  =   #{result}
+        </if> 		
+		<if test="startDate != null and startDate != ''">
+            and synctime   >=  #{startDate}
+        </if>
+        <if test="endDate != null and endDate != ''">
+            and  #{endDate} >=  synctime
+        </if>
     </sql>
 	
     

+ 25 - 2
maxkey-web-manage/src/main/java/org/maxkey/web/contorller/LogsController.java

@@ -24,13 +24,16 @@ import org.apache.mybatis.jpa.persistence.JpaPageResults;
 import org.maxkey.entity.HistoryLogin;
 import org.maxkey.entity.HistoryLoginApps;
 import org.maxkey.entity.HistoryLogs;
+import org.maxkey.entity.HistorySynchronizer;
 import org.maxkey.persistence.service.HistoryLoginAppsService;
 import org.maxkey.persistence.service.HistoryLoginService;
 import org.maxkey.persistence.service.HistoryLogsService;
+import org.maxkey.persistence.service.HistorySynchronizerService;
 import org.maxkey.util.DateUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Qualifier;
 import org.springframework.beans.propertyeditors.CustomDateEditor;
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.WebDataBinder;
@@ -60,6 +63,10 @@ final static Logger _logger = LoggerFactory.getLogger(LogsController.class);
 	@Autowired
 	HistoryLogsService logsService;
 	
+	@Autowired
+    @Qualifier("historySynchronizerService")
+	HistorySynchronizerService historySynchronizerService;
+	
 	/**
 	 * 查询操作日志
 	 * @param logs
@@ -90,7 +97,7 @@ final static Logger _logger = LoggerFactory.getLogger(LogsController.class);
 	@RequestMapping(value={"/loginHistory/grid"})
 	@ResponseBody
 	public JpaPageResults<HistoryLogin> logAuthsGrid(@ModelAttribute("loginHistory") HistoryLogin loginHistory){
-		_logger.debug("logs/loginHistory/datagrid/ logsGrid() "+loginHistory);
+		_logger.debug("logs/loginHistory/datagrid/ "+loginHistory);
 		return loginHistoryService.queryPageResults(loginHistory);
 	}
 	
@@ -109,11 +116,27 @@ final static Logger _logger = LoggerFactory.getLogger(LogsController.class);
 	@RequestMapping(value={"/loginAppsHistory/grid"})
 	@ResponseBody
 	public JpaPageResults<HistoryLoginApps> loginAppsHistoryGrid(@ModelAttribute("loginAppsHistory") HistoryLoginApps loginAppsHistory){
-		_logger.debug("logs/loginAppsHistory/datagrid/ logsGrid() "+loginAppsHistory);
+		_logger.debug("logs/loginAppsHistory/datagrid/  "+loginAppsHistory);
 		loginAppsHistory.setId(null);
 		return loginAppsHistoryService.queryPageResults(loginAppsHistory);
 	}
 	
+	@RequestMapping(value={"/historySynchronizerList"})
+    public String historySynchronizerList(){
+        return "logs/historySynchronizerList";
+    }
+	
+	/**
+     * @param historySynchronizer
+     * @return
+     */
+    @RequestMapping(value={"/historySynchronizer/grid"})
+    @ResponseBody
+    public JpaPageResults<HistorySynchronizer> historySynchronizerGrid(@ModelAttribute("historySynchronizer") HistorySynchronizer historySynchronizer){
+        _logger.debug("logs/historySynchronizer/grid/ "+historySynchronizer);
+        return historySynchronizerService.queryPageResults(historySynchronizer);
+    }
+	
 	
 	@RequestMapping(value={"/provisioningEventList"})
 	public String provisioningEntryList(){

+ 11 - 0
maxkey-web-manage/src/main/resources/messages/message.properties

@@ -515,6 +515,16 @@ log.operate.content=\u5185\u5bb9
 log.operate.messageType=\u6d88\u606f\u7c7b\u578b
 log.operate.operateType=\u64cd\u4f5c\u7c7b\u578b
 log.operate.username=\u64cd\u4f5c\u4eba
+#log.synchronizer
+log.synchronizer.id=\u7F16\u53F7
+log.synchronizer.syncId=\u540C\u6B65\u5668\u7F16\u53F7
+log.synchronizer.syncName=\u540C\u6B65\u5668
+log.synchronizer.objectId=\u5BF9\u8C61\u7F16\u53F7
+log.synchronizer.objectType=\u5BF9\u8C61\u540D\u79F0
+log.synchronizer.objectName=\u5BF9\u8C61\u540D\u79F0
+log.synchronizer.syncTime=\u540C\u6B65\u65F6\u95F4
+log.synchronizer.result=\u7ED3\u679C
+
 #message
 message.action.insert.success=\u65b0\u589e\u64cd\u4f5c\u6210\u529f
 message.action.insert.error=\u65b0\u589e\u64cd\u4f5c\u5931\u8d25
@@ -549,6 +559,7 @@ navs.audit=\u65e5\u5fd7\u5ba1\u8ba1
 navs.audit.login=\u767b\u5f55\u65e5\u5fd7
 navs.audit.loginapps=\u8bbf\u95ee\u65e5\u5fd7
 navs.audit.operate=\u64cd\u4f5c\u65e5\u5fd7
+navs.audit.synchronizer=\u540C\u6B65\u65E5\u5FD7
 navs.roles=\u89d2\u8272\u7ba1\u7406
 navs.role.member=\u89d2\u8272\u7528\u6237
 navs.role.permissions=\u89d2\u8272\u6743\u9650\u7ba1\u7406

+ 10 - 0
maxkey-web-manage/src/main/resources/messages/message_en.properties

@@ -526,6 +526,15 @@ log.operate.messageType=messageType
 log.operate.operateType=operateType
 log.operate.username=username
 
+log.synchronizer.id=Id
+log.synchronizer.syncId=SyncId
+log.synchronizer.syncName=SyncName
+log.synchronizer.objectId=ObjectId
+log.synchronizer.objectType=ObjectType
+log.synchronizer.objectName=ObjectName
+log.synchronizer.syncTime=SyncTime
+log.synchronizer.result=Result
+
 message.action.insert.success=Insert Success
 message.action.insert.error=Insert  Error
 message.action.update.success=Update Success
@@ -560,6 +569,7 @@ navs.audit=Audit
 navs.audit.login=Login
 navs.audit.loginapps=LoginApps
 navs.audit.operate=Operate
+navs.audit.synchronizer=Synchronizer
 navs.roles=Roles
 navs.role.member=RoleMember
 navs.role.permissions=Permissions

+ 10 - 0
maxkey-web-manage/src/main/resources/messages/message_zh_CN.properties

@@ -524,6 +524,15 @@ log.operate.messageType=\u6d88\u606f\u7c7b\u578b
 log.operate.operateType=\u64cd\u4f5c\u7c7b\u578b
 log.operate.username=\u64cd\u4f5c\u4eba
 
+log.synchronizer.id=\u7F16\u53F7
+log.synchronizer.syncId=\u540C\u6B65\u5668\u7F16\u53F7
+log.synchronizer.syncName=\u540C\u6B65\u5668
+log.synchronizer.objectId=\u5BF9\u8C61\u7F16\u53F7
+log.synchronizer.objectType=\u5BF9\u8C61\u540D\u79F0
+log.synchronizer.objectName=\u5BF9\u8C61\u540D\u79F0
+log.synchronizer.syncTime=\u540C\u6B65\u65F6\u95F4
+log.synchronizer.result=\u7ED3\u679C
+
 message.action.insert.success=\u65b0\u589e\u64cd\u4f5c\u6210\u529f
 message.action.insert.error=\u65b0\u589e\u64cd\u4f5c\u5931\u8d25
 message.action.update.success=\u66f4\u65b0\u64cd\u4f5c\u6210\u529f
@@ -558,6 +567,7 @@ navs.audit=\u65e5\u5fd7\u5ba1\u8ba1
 navs.audit.login=\u767b\u5f55\u65e5\u5fd7
 navs.audit.loginapps=\u8bbf\u95ee\u65e5\u5fd7
 navs.audit.operate=\u64cd\u4f5c\u65e5\u5fd7
+navs.audit.synchronizer=\u540C\u6B65\u65E5\u5FD7
 navs.roles=\u89d2\u8272\u7ba1\u7406
 navs.role.member=\u89d2\u8272\u7528\u6237
 navs.role.permissions=\u89d2\u8272\u6743\u9650\u7ba1\u7406

+ 6 - 0
maxkey-web-manage/src/main/resources/templates/views/layout/sidenav.ftl

@@ -142,6 +142,12 @@
 	         </a>
 	       </li>
 	       <li>
+             <a class="side-nav-menu" href="<@base />/logs/historySynchronizerList/">
+                 <@locale code="navs.audit.synchronizer"/>
+                 <span class="fa fa-fw fa-eraser"></span>
+             </a>
+           </li>
+	       <li>
 	         <a class="side-nav-menu" href="<@base />/logs/list/">
 	         	  <@locale code="navs.audit.operate"/>
 	         	  <span class="fa fa-fw fa-eraser"></span>

+ 141 - 0
maxkey-web-manage/src/main/resources/templates/views/logs/historySynchronizerList.ftl

@@ -0,0 +1,141 @@
+<!DOCTYPE HTML>
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+	<#include  "../layout/header.ftl"/>
+	<#include  "../layout/common.cssjs.ftl"/>
+	<script type="text/javascript">	
+
+	</script>
+</head>
+<body> 
+<div class="app header-default side-nav-dark">
+<div class="layout">
+	<div class="header navbar">
+		<#include  "../layout/top.ftl"/>
+	</div>
+	
+	<div class="col-md-3 sidebar-nav side-nav" >
+		<#include  "../layout/sidenav.ftl"/>
+	</div>
+	<div class="page-container">
+	
+	<div class="main-content">
+					<div class="container-fluid">
+
+						<div class="breadcrumb-wrapper row">
+							<div class="col-12 col-lg-3 col-md-6">
+								<h4 class="page-title"><@locale code="navs.audit.synchronizer"/></h4>
+							</div>
+							<div class="col-12 col-lg-9 col-md-6">
+								<ol class="breadcrumb float-right">
+									<li><a href="<@base/>/main"><@locale code="navs.home"/></a></li>
+									<li class="inactive" >/ <@locale code="navs.audit"/></li>
+									<li class="active">/ <@locale code="navs.audit.synchronizer"/></li>
+								</ol>
+							</div>
+						</div>
+
+					</div>
+					<div class="container-fluid">
+					<div class="content-wrapper row">
+					<div class="col-12 grid-margin">
+						<div class="card">
+							<div class="card-body">
+							
+	<div id="tool_box">
+		<table   class="table table-bordered">
+			<tr>
+				<td  width="120px">
+			 		 <@locale code="log.synchronizer.syncId"/>:
+				</td>
+				<td  width="375px">
+					<form id="basic_search_form">
+				 			<input  class="form-control"  name="syncId" type="text" style ="width:150px;float:left;">
+				 			<input  class="button btn btn-primary mr-3"    id="searchBtn" type="button" size="50" value="<@locale code="button.text.search"/>">
+				 			<input  class="button btn btn-secondary"  id="advancedSearchExpandBtn" type="button" size="50"  value="<@locale code="button.text.expandsearch"/>" expandValue="<@locale code="button.text.expandsearch"/>"  collapseValue="<@locale code="button.text.collapsesearch"/>">
+					 	</form>
+				</td>
+				<td colspan="2"> 
+					 <div id="tool_box_right">
+					 	
+					</div>
+				</td>
+			</tr>
+		</table>
+ 		
+		
+ 	</div>
+ 	
+ 	<div id="advanced_search">
+ 		<form id="advanced_search_form">
+ 			<table    class="table table-bordered">
+	 			<tr>
+	 				<td width="120px"><@locale code="log.synchronizer.objectName"/></td>
+		 			<td width="360px">
+		 				<input  class="form-control"  name="objectName" type="text" >
+		 			</td>
+		 			<td width="120px"><@locale code="log.synchronizer.result"/></td>
+		 			<td width="360px">
+						<input class="form-control"  type="text" id="result" name="result"  title="" value=""/>
+			 			</td>
+		 			
+			 </tr>
+			 <tr>
+					<td width="120px"><@locale code="common.text.startdate"/></td>
+		 			<td width="360px">
+			 			<input  class="form-control datetimepicker"    type="text" id="startDate" name="startDate"  title="" value=""/>
+			 		</td>
+	 				<td width="120px"><@locale code="common.text.enddate"/></td>
+		 			<td width="360px">
+		 				<input  class="form-control datetimepicker"    type="text" id="endDate" name="endDate"  title="" value=""/>
+		 			</td>
+		 			
+			 </tr>
+			</table>
+ 		</form>
+ 	</div>
+ 	<table 	data-url="<@base />/logs/historySynchronizer/grid"
+				id="datagrid"
+				data-toggle="table"
+				data-classes="table table-bordered table-hover table-striped"
+				data-pagination="true"
+				data-total-field="records"
+				data-page-list="[10, 25, 50, 100]"
+				data-search="false"
+				data-locale="zh-CN"
+				data-query-params="dataGridQueryParams"
+				data-query-params-type="pageSize"
+				data-side-pagination="server">
+			<thead>
+				<tr>
+					<th data-sortable="true" data-field="id"  data-visible="false"><@locale code="log.synchronizer.id" /></th>
+					<th data-field="syncId" ><@locale code="log.synchronizer.syncId" /></th>
+					<th data-field="syncName"  ><@locale	code="log.synchronizer.syncName" /></th>
+					<th data-field="objectId" ><@locale	code="log.synchronizer.objectId" /></th>
+					<th data-field="objectType" ><@locale	code="log.synchronizer.objectType" /></th>
+					<th data-field="objectName" ><@locale	code="log.synchronizer.objectName" /></th>
+					<th data-field="syncTime" ><@locale	code="log.synchronizer.syncTime" /></th>
+					<th data-field="result" ><@locale  code="log.synchronizer.result" /></th>
+				</tr>
+			</thead>
+		</table>
+</div>
+	
+</div>
+</div>
+					</div>
+<footer class="content-footer">
+					<#include  "../layout/footer.ftl"/>
+</footer>
+
+	</div>
+	
+	</div>
+</div>
+
+<div id="preloader">
+<div class="loader" id="loader-1"></div>
+</div>
+
+</body>
+</html>