diff --git a/maxkey-authentications/maxkey-authentication-core/src/main/java/org/maxkey/authn/RealmAuthenticationProvider.java b/maxkey-authentications/maxkey-authentication-core/src/main/java/org/maxkey/authn/RealmAuthenticationProvider.java index 7481841ad..d6d431574 100644 --- a/maxkey-authentications/maxkey-authentication-core/src/main/java/org/maxkey/authn/RealmAuthenticationProvider.java +++ b/maxkey-authentications/maxkey-authentication-core/src/main/java/org/maxkey/authn/RealmAuthenticationProvider.java @@ -87,7 +87,7 @@ public class RealmAuthenticationProvider extends AbstractAuthenticationProvider authTypeValid(loginCredential.getAuthType()); Institutions inst = (Institutions)WebContext.getAttribute(WebConstants.CURRENT_INST); - if(inst.getCaptcha().equalsIgnoreCase("YES")) { + if(inst.getCaptchaSupport().equalsIgnoreCase("YES")) { captchaValid(loginCredential.getCaptcha(),loginCredential.getAuthType()); } diff --git a/maxkey-core/src/main/java/org/maxkey/entity/HistoryLogs.java b/maxkey-core/src/main/java/org/maxkey/entity/HistoryLogs.java deleted file mode 100644 index 594e98f3f..000000000 --- a/maxkey-core/src/main/java/org/maxkey/entity/HistoryLogs.java +++ /dev/null @@ -1,268 +0,0 @@ -/* - * Copyright [2020] [MaxKey of copyright http://www.maxkey.top] - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - - -package org.maxkey.entity; - -import java.io.Serializable; -import javax.persistence.Column; -import javax.persistence.Entity; -import javax.persistence.GeneratedValue; -import javax.persistence.GenerationType; -import javax.persistence.Id; -import javax.persistence.Table; -import org.apache.mybatis.jpa.persistence.JpaBaseEntity; - -/** - * . - * @author Crystal.Sea - * - */ -@Entity -@Table(name = "MXK_HISTORY_LOGS") -public class HistoryLogs extends JpaBaseEntity implements Serializable { - private static final long serialVersionUID = 6560201093784960493L; - @Id - @Column - @GeneratedValue(strategy = GenerationType.AUTO, generator = "snowflakeid") - String id; - @Column - String serviceName; - @Column - String message; - @Column - String content; - @Column - String messageType; - @Column - String operateType; - @Column - String username; - @Column - String code; - @Column - String createdBy; - @Column - String createdDate; - @Column - String modifiedBy; - @Column - String modifiedDate; - @Column - private String instId; - - private String instName; - String startDate; - String endDate; - - public HistoryLogs() { - super(); - } - - /** - * HistoryLogs. - * @param serviceName String - * @param code String - * @param message String - * @param content String - * @param messageType String - * @param operateType String - * @param createdBy String - * @param username String - * @param cname String - */ - public HistoryLogs(String serviceName, String code, - String message, String content, - String messageType,String operateType, - String createdBy, String username, String cname) { - super(); - this.serviceName = serviceName; - this.code = code; - this.message = message; - this.content = content; - this.messageType = messageType; - this.operateType = operateType; - this.createdBy = createdBy; - this.username = username; - - } - - public String getServiceName() { - return serviceName; - } - - public void setServiceName(String serviceName) { - this.serviceName = serviceName; - } - - public String getMessage() { - return message; - } - - public void setMessage(String message) { - this.message = message; - } - - public String getContent() { - return content; - } - - public void setContent(String content) { - this.content = content; - } - - public String getMessageType() { - return messageType; - } - - public void setMessageType(String messageType) { - this.messageType = messageType; - } - - public String getOperateType() { - return operateType; - } - - public void setOperateType(String operateType) { - this.operateType = operateType; - } - - public String getUsername() { - return username; - } - - - public void setUsername(String username) { - this.username = username; - } - - - public String getCode() { - return code; - } - - public void setCode(String code) { - this.code = code; - } - - public String getId() { - return id; - } - - public void setId(String id) { - this.id = id; - } - - public String getCreatedBy() { - return createdBy; - } - - public void setCreatedBy(String createdBy) { - this.createdBy = createdBy; - } - - public String getCreatedDate() { - return createdDate; - } - - public void setCreatedDate(String createdDate) { - this.createdDate = createdDate; - } - - public String getModifiedBy() { - return modifiedBy; - } - - public void setModifiedBy(String modifiedBy) { - this.modifiedBy = modifiedBy; - } - - public String getModifiedDate() { - return modifiedDate; - } - - public void setModifiedDate(String modifiedDate) { - this.modifiedDate = modifiedDate; - } - - 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; - } - - public String getInstId() { - return instId; - } - - public void setInstId(String instId) { - this.instId = instId; - } - - public String getInstName() { - return instName; - } - - public void setInstName(String instName) { - this.instName = instName; - } - - @Override - public String toString() { - StringBuilder builder = new StringBuilder(); - builder.append("HistoryLogs [id="); - builder.append(id); - builder.append(", serviceName="); - builder.append(serviceName); - builder.append(", message="); - builder.append(message); - builder.append(", content="); - builder.append(content); - builder.append(", messageType="); - builder.append(messageType); - builder.append(", operateType="); - builder.append(operateType); - builder.append(", username="); - builder.append(username); - builder.append(", code="); - builder.append(code); - builder.append(", createdBy="); - builder.append(createdBy); - builder.append(", createdDate="); - builder.append(createdDate); - builder.append(", modifiedBy="); - builder.append(modifiedBy); - builder.append(", modifiedDate="); - builder.append(modifiedDate); - builder.append(", startDate="); - builder.append(startDate); - builder.append(", endDate="); - builder.append(endDate); - builder.append("]"); - return builder.toString(); - } - -} diff --git a/maxkey-core/src/main/java/org/maxkey/entity/HistorySystemLogs.java b/maxkey-core/src/main/java/org/maxkey/entity/HistorySystemLogs.java new file mode 100644 index 000000000..f2a771503 --- /dev/null +++ b/maxkey-core/src/main/java/org/maxkey/entity/HistorySystemLogs.java @@ -0,0 +1,208 @@ +/* + * Copyright [2020] [MaxKey of copyright http://www.maxkey.top] + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + + +package org.maxkey.entity; + +import java.io.Serializable; +import javax.persistence.Column; +import javax.persistence.Entity; +import javax.persistence.GeneratedValue; +import javax.persistence.GenerationType; +import javax.persistence.Id; +import javax.persistence.Table; +import org.apache.mybatis.jpa.persistence.JpaBaseEntity; + +/** + * . + * @author Crystal.Sea + * + */ +@Entity +@Table(name = "MXK_HISTORY_SYSTEM_LOGS") +public class HistorySystemLogs extends JpaBaseEntity implements Serializable { + private static final long serialVersionUID = 6560201093784960493L; + @Id + @Column + @GeneratedValue(strategy = GenerationType.AUTO, generator = "snowflakeid") + String id; + @Column + String topic; + @Column + String message; + @Column + String messageType; + @Column + String messageResult; + @Column + String userId; + @Column + String username; + @Column + String displayName; + @Column + String executeTime; + @Column + private String instId; + + private String instName; + String startDate; + String endDate; + + public HistorySystemLogs() { + super(); + } + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getTopic() { + return topic; + } + + public void setTopic(String topic) { + this.topic = topic; + } + + public String getMessage() { + return message; + } + + public void setMessage(String message) { + this.message = message; + } + + + + public String getMessageType() { + return messageType; + } + + public void setMessageType(String messageType) { + this.messageType = messageType; + } + + public String getMessageResult() { + return messageResult; + } + + public void setMessageResult(String messageResult) { + this.messageResult = messageResult; + } + + public String getUserId() { + return userId; + } + + public void setUserId(String userId) { + this.userId = userId; + } + + public String getUsername() { + return username; + } + + public void setUsername(String username) { + this.username = username; + } + + public String getDisplayName() { + return displayName; + } + + public void setDisplayName(String displayName) { + this.displayName = displayName; + } + + public String getExecuteTime() { + return executeTime; + } + + public void setExecuteTime(String executeTime) { + this.executeTime = executeTime; + } + + public String getInstId() { + return instId; + } + + public void setInstId(String instId) { + this.instId = instId; + } + + public String getInstName() { + return instName; + } + + public void setInstName(String instName) { + this.instName = instName; + } + + 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(); + builder.append("HistoryLogs [id="); + builder.append(id); + builder.append(", topic="); + builder.append(topic); + builder.append(", message="); + builder.append(message); + builder.append(", messageType="); + builder.append(messageType); + builder.append(", messageResult="); + builder.append(messageResult); + builder.append(", userId="); + builder.append(userId); + builder.append(", username="); + builder.append(username); + builder.append(", displayName="); + builder.append(displayName); + builder.append(", executeTime="); + builder.append(executeTime); + builder.append(", instId="); + builder.append(instId); + builder.append(", instName="); + builder.append(instName); + builder.append(", startDate="); + builder.append(startDate); + builder.append(", endDate="); + builder.append(endDate); + builder.append("]"); + return builder.toString(); + } + +} diff --git a/maxkey-core/src/main/java/org/maxkey/entity/Institutions.java b/maxkey-core/src/main/java/org/maxkey/entity/Institutions.java index db65aa7a6..ae1e6ad40 100644 --- a/maxkey-core/src/main/java/org/maxkey/entity/Institutions.java +++ b/maxkey-core/src/main/java/org/maxkey/entity/Institutions.java @@ -65,32 +65,22 @@ public class Institutions extends JpaBaseEntity implements Serializable { @Column private String description; - @Column - private int status; @Column private String logo; @Column - private String title; + private String frontTitle; @Column private String consoleTitle; @Column private String domain; @Column - private String captcha; + private String captchaType; @Column private String captchaSupport; @Column private String defaultUri; - @Column - String createdBy; - @Column - String createdDate; - @Column - String modifiedBy; - @Column - String modifiedDate; public Institutions() { super(); @@ -128,12 +118,21 @@ public class Institutions extends JpaBaseEntity implements Serializable { this.logo = logo; } - public String getTitle() { - return title; + + public String getFrontTitle() { + return frontTitle; } - public void setTitle(String title) { - this.title = title; + public void setFrontTitle(String frontTitle) { + this.frontTitle = frontTitle; + } + + public String getCaptchaType() { + return captchaType; + } + + public void setCaptchaType(String captchaType) { + this.captchaType = captchaType; } public String getConsoleTitle() { @@ -248,62 +247,11 @@ public class Institutions extends JpaBaseEntity implements Serializable { this.description = description; } - public int getStatus() { - return status; - } - - public void setStatus(int status) { - this.status = status; - } - - public String getCreatedBy() { - return createdBy; - } - - public void setCreatedBy(String createdBy) { - this.createdBy = createdBy; - } - - public String getCreatedDate() { - return createdDate; - } - - public void setCreatedDate(String createdDate) { - this.createdDate = createdDate; - } - - public String getModifiedBy() { - return modifiedBy; - } - - public void setModifiedBy(String modifiedBy) { - this.modifiedBy = modifiedBy; - } - - public String getModifiedDate() { - return modifiedDate; - } - - public void setModifiedDate(String modifiedDate) { - this.modifiedDate = modifiedDate; - } - - public String getCaptcha() { - return captcha; - } - - public void setCaptcha(String captcha) { - this.captcha = captcha; - } public String getCaptchaSupport() { return captchaSupport; } - public boolean isTrueCaptchaSupport() { - return "YES".equalsIgnoreCase(captchaSupport); - } - public void setCaptchaSupport(String captchaSupport) { this.captchaSupport = captchaSupport; } @@ -325,14 +273,6 @@ public class Institutions extends JpaBaseEntity implements Serializable { builder.append(name); builder.append(", fullName="); builder.append(fullName); - builder.append(", logo="); - builder.append(logo); - builder.append(", title="); - builder.append(title); - builder.append(", consoleTitle="); - builder.append(consoleTitle); - builder.append(", domain="); - builder.append(domain); builder.append(", division="); builder.append(division); builder.append(", country="); @@ -357,16 +297,20 @@ public class Institutions extends JpaBaseEntity implements Serializable { builder.append(email); builder.append(", description="); builder.append(description); - builder.append(", status="); - builder.append(status); - builder.append(", createdBy="); - builder.append(createdBy); - builder.append(", createdDate="); - builder.append(createdDate); - builder.append(", modifiedBy="); - builder.append(modifiedBy); - builder.append(", modifiedDate="); - builder.append(modifiedDate); + builder.append(", logo="); + builder.append(logo); + builder.append(", frontTitle="); + builder.append(frontTitle); + builder.append(", consoleTitle="); + builder.append(consoleTitle); + builder.append(", domain="); + builder.append(domain); + builder.append(", captchaType="); + builder.append(captchaType); + builder.append(", captchaSupport="); + builder.append(captchaSupport); + builder.append(", defaultUri="); + builder.append(defaultUri); builder.append("]"); return builder.toString(); } diff --git a/maxkey-core/src/main/java/org/maxkey/persistence/repository/InstitutionsRepository.java b/maxkey-core/src/main/java/org/maxkey/persistence/repository/InstitutionsRepository.java index 6bc3f5875..0ac7a5b3b 100644 --- a/maxkey-core/src/main/java/org/maxkey/persistence/repository/InstitutionsRepository.java +++ b/maxkey-core/src/main/java/org/maxkey/persistence/repository/InstitutionsRepository.java @@ -23,7 +23,6 @@ import java.util.List; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.TimeUnit; -import org.maxkey.constants.ConstsStatus; import org.maxkey.entity.Institutions; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -37,10 +36,10 @@ public class InstitutionsRepository { private static Logger _logger = LoggerFactory.getLogger(InstitutionsRepository.class); private static final String SELECT_STATEMENT = - "select * from mxk_institutions where domain = ? and status = " + ConstsStatus.ACTIVE; + "select * from mxk_institutions where domain = ? " ; private static final String SELECT_STATEMENT_BY_ID = - "select * from mxk_institutions where id = ? and status = " + ConstsStatus.ACTIVE; + "select * from mxk_institutions where id = ? " ; protected static final Cache institutionsStore = Caffeine.newBuilder() @@ -102,11 +101,11 @@ public class InstitutionsRepository { institution.setFullName(rs.getString("fullname")); institution.setLogo(rs.getString("logo")); institution.setDomain(rs.getString("domain")); - institution.setTitle(rs.getString("title")); + institution.setFrontTitle(rs.getString("fronttitle")); institution.setConsoleTitle(rs.getString("consoletitle")); - institution.setCaptcha(rs.getString("captcha")); - institution.setCaptchaSupport(rs.getString("CaptchaSupport")); - institution.setDefaultUri(rs.getString("DefaultUri")); + institution.setCaptchaType(rs.getString("captchatype")); + institution.setCaptchaSupport(rs.getString("captchasupport")); + institution.setDefaultUri(rs.getString("defaultUri")); return institution; } } diff --git a/maxkey-core/src/main/java/org/maxkey/persistence/repository/LocalizationRepository.java b/maxkey-core/src/main/java/org/maxkey/persistence/repository/LocalizationRepository.java index 704b3e7b4..6e4064f64 100644 --- a/maxkey-core/src/main/java/org/maxkey/persistence/repository/LocalizationRepository.java +++ b/maxkey-core/src/main/java/org/maxkey/persistence/repository/LocalizationRepository.java @@ -64,7 +64,7 @@ public class LocalizationRepository { }else if(code.equals("global.title")) { message = getFromStore(code, htmlTag, locale, inst); if(message == null) { - message = institutionService.get(inst).getTitle(); + message = institutionService.get(inst).getFrontTitle(); } }else if(code.equals("global.consoleTitle")) { message = getFromStore(code, htmlTag, locale, inst); diff --git a/maxkey-core/src/main/java/org/maxkey/web/message/Message.java b/maxkey-core/src/main/java/org/maxkey/web/message/Message.java index 8ec85c541..979fd8ddc 100644 --- a/maxkey-core/src/main/java/org/maxkey/web/message/Message.java +++ b/maxkey-core/src/main/java/org/maxkey/web/message/Message.java @@ -39,7 +39,7 @@ import org.springframework.validation.FieldError; public class Message { static final Logger _logger = LoggerFactory.getLogger(Message.class); // 服务名称 - private String serviceName; + private String topic; // 信息内容 private String message; // 信息代码 @@ -119,9 +119,9 @@ public class Message { WebContext.setMessage(this); } - public Message(String serviceName, String message, Object messageObject, BindingResult result, + public Message(String topic, String message, Object messageObject, BindingResult result, MessageType messageType, OperateType operateType, MessageScope messageScope) { - this.serviceName = serviceName; + this.topic = topic; this.message = message; this.messageObject = messageObject; this.operateType = operateType; @@ -233,12 +233,14 @@ public class Message { this.messageScope = messageScope; } - public String getServiceName() { - return serviceName; - } + public String getTopic() { + return topic; + } + + public void setTopic(String topic) { + this.topic = topic; + } + - public void setServiceName(String serviceName) { - this.serviceName = serviceName; - } } diff --git a/maxkey-persistence/src/main/java/org/maxkey/persistence/mapper/HistorySystemLogsMapper.java b/maxkey-persistence/src/main/java/org/maxkey/persistence/mapper/HistorySystemLogsMapper.java index 208758f62..5f57d0173 100644 --- a/maxkey-persistence/src/main/java/org/maxkey/persistence/mapper/HistorySystemLogsMapper.java +++ b/maxkey-persistence/src/main/java/org/maxkey/persistence/mapper/HistorySystemLogsMapper.java @@ -21,13 +21,13 @@ package org.maxkey.persistence.mapper; import org.apache.mybatis.jpa.persistence.IJpaBaseMapper; -import org.maxkey.entity.HistoryLogs; +import org.maxkey.entity.HistorySystemLogs; /** * @author Crystal.sea * */ -public interface HistorySystemLogsMapper extends IJpaBaseMapper { +public interface HistorySystemLogsMapper extends IJpaBaseMapper { } diff --git a/maxkey-persistence/src/main/java/org/maxkey/persistence/service/HistorySystemLogsService.java b/maxkey-persistence/src/main/java/org/maxkey/persistence/service/HistorySystemLogsService.java index 3bc6a71fd..e9233e542 100644 --- a/maxkey-persistence/src/main/java/org/maxkey/persistence/service/HistorySystemLogsService.java +++ b/maxkey-persistence/src/main/java/org/maxkey/persistence/service/HistorySystemLogsService.java @@ -18,12 +18,12 @@ package org.maxkey.persistence.service; import org.apache.mybatis.jpa.persistence.JpaBaseService; -import org.maxkey.entity.HistoryLogs; +import org.maxkey.entity.HistorySystemLogs; import org.maxkey.persistence.mapper.HistorySystemLogsMapper; import org.springframework.stereotype.Repository; @Repository -public class HistorySystemLogsService extends JpaBaseService{ +public class HistorySystemLogsService extends JpaBaseService{ public HistorySystemLogsService() { super(HistorySystemLogsMapper.class); diff --git a/maxkey-persistence/src/main/resources/org/maxkey/persistence/mapper/xml/mysql/HistorySystemLogsMapper.xml b/maxkey-persistence/src/main/resources/org/maxkey/persistence/mapper/xml/mysql/HistorySystemLogsMapper.xml index 2fd6d436a..ae1ccb5ab 100644 --- a/maxkey-persistence/src/main/resources/org/maxkey/persistence/mapper/xml/mysql/HistorySystemLogsMapper.xml +++ b/maxkey-persistence/src/main/resources/org/maxkey/persistence/mapper/xml/mysql/HistorySystemLogsMapper.xml @@ -6,50 +6,37 @@ and id = #{id} - - and lower(servicename) like lower(concat('%',#{serviceName},'%')) + + and lower(topic) like lower(concat('%',#{topic},'%')) and lower(message) like lower(concat('%',#{message},'%')) - and createddate between #{startDate} and #{endDate} + and executeTime between #{startDate} and #{endDate} - - and createdby = #{createdBy} - - and lower(username) like lower(concat('%',#{username},'%')) + + and lower(displayName) like lower(concat('%',#{displayName},'%')) + - and messagetype = #{messageType} + and messageType = #{messageType} - - and operatetype = #{operateType} + + and messageResult = #{messageResult} - + select * + from mxk_history_system_logs where instid = #{instId} - order by createddate desc + order by executeTime desc \ No newline at end of file diff --git a/maxkey-webs/maxkey-web-maxkey/src/main/java/org/maxkey/web/endpoint/LoginEndpoint.java b/maxkey-webs/maxkey-web-maxkey/src/main/java/org/maxkey/web/endpoint/LoginEndpoint.java index eb550a942..855f11358 100644 --- a/maxkey-webs/maxkey-web-maxkey/src/main/java/org/maxkey/web/endpoint/LoginEndpoint.java +++ b/maxkey-webs/maxkey-web-maxkey/src/main/java/org/maxkey/web/endpoint/LoginEndpoint.java @@ -121,8 +121,8 @@ public class LoginEndpoint { modelAndView.addObject("userDomainUrlJson", kerberosService.buildKerberosProxys()); } Institutions inst = (Institutions)WebContext.getAttribute(WebConstants.CURRENT_INST); - modelAndView.addObject("isCaptcha", inst.isTrueCaptchaSupport()); - modelAndView.addObject("captcha", inst.getCaptcha()); + modelAndView.addObject("captchaSupport", inst.getCaptchaSupport()); + modelAndView.addObject("captchaType", inst.getCaptchaType()); modelAndView.addObject("sessionid", WebContext.getSession().getId()); //modelAndView.addObject("jwtToken",jwtLoginService.buildLoginJwt()); //load Social Sign On Providers diff --git a/maxkey-webs/maxkey-web-maxkey/src/main/java/org/maxkey/web/historys/contorller/HistorySystemLogsController.java b/maxkey-webs/maxkey-web-maxkey/src/main/java/org/maxkey/web/historys/contorller/HistorySystemLogsController.java index e45fbc79d..5f65e4fad 100644 --- a/maxkey-webs/maxkey-web-maxkey/src/main/java/org/maxkey/web/historys/contorller/HistorySystemLogsController.java +++ b/maxkey-webs/maxkey-web-maxkey/src/main/java/org/maxkey/web/historys/contorller/HistorySystemLogsController.java @@ -20,7 +20,7 @@ package org.maxkey.web.historys.contorller; import java.text.SimpleDateFormat; import java.util.Date; import org.apache.mybatis.jpa.persistence.JpaPageResults; -import org.maxkey.entity.HistoryLogs; +import org.maxkey.entity.HistorySystemLogs; import org.maxkey.persistence.service.HistorySystemLogsService; import org.maxkey.util.DateUtils; import org.maxkey.web.WebContext; @@ -63,7 +63,7 @@ public class HistorySystemLogsController { */ @RequestMapping(value = { "/systemLogsList/grid" }) @ResponseBody - public JpaPageResults logsDataGrid(@ModelAttribute("historyLogs") HistoryLogs historyLogs) { + public JpaPageResults logsDataGrid(@ModelAttribute("historyLogs") HistorySystemLogs historyLogs) { _logger.debug("history/systemLogs/grid/ systemLogs() " + historyLogs); historyLogs.setInstId(WebContext.getUserInfo().getInstId()); return historySystemLogsService.queryPageResults(historyLogs); diff --git a/maxkey-webs/maxkey-web-maxkey/src/main/java/org/maxkey/web/interceptor/HistoryLogsAdapter.java b/maxkey-webs/maxkey-web-maxkey/src/main/java/org/maxkey/web/interceptor/HistoryLogsAdapter.java index 94a62fbd9..1082a697b 100644 --- a/maxkey-webs/maxkey-web-maxkey/src/main/java/org/maxkey/web/interceptor/HistoryLogsAdapter.java +++ b/maxkey-webs/maxkey-web-maxkey/src/main/java/org/maxkey/web/interceptor/HistoryLogsAdapter.java @@ -19,10 +19,9 @@ package org.maxkey.web.interceptor; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; -import org.maxkey.entity.HistoryLogs; +import org.maxkey.entity.HistorySystemLogs; import org.maxkey.entity.UserInfo; import org.maxkey.persistence.service.HistorySystemLogsService; -import org.maxkey.util.JsonUtils; import org.maxkey.web.WebContext; import org.maxkey.web.message.Message; import org.maxkey.web.message.MessageScope; @@ -64,17 +63,7 @@ public class HistoryLogsAdapter implements AsyncHandlerInterceptor { UserInfo userInfo = WebContext.getUserInfo();//取得当前用户信息 //创建日志记录 - HistoryLogs historyLogs = new HistoryLogs( - message.getServiceName(), - message.getCode(), - message.getMessage(), - JsonUtils.object2Json(message.getMessageObject()), - message.getMessageType().toString(), - message.getOperateType().toString(), - userInfo == null ? null : userInfo.getId(), - userInfo == null ? null : userInfo.getUsername(), - "" - ); + HistorySystemLogs historyLogs = new HistorySystemLogs(); historyLogs.setInstId(userInfo.getInstId()); _logger.debug("insert db historyLogs content : " + historyLogs); historySystemLogsService.insert(historyLogs);//日志插入数据库 diff --git a/maxkey-webs/maxkey-web-mgt/src/main/java/org/maxkey/web/access/contorller/GroupMemberController.java b/maxkey-webs/maxkey-web-mgt/src/main/java/org/maxkey/web/access/contorller/GroupMemberController.java index 9c3596d20..c873a8985 100644 --- a/maxkey-webs/maxkey-web-mgt/src/main/java/org/maxkey/web/access/contorller/GroupMemberController.java +++ b/maxkey-webs/maxkey-web-mgt/src/main/java/org/maxkey/web/access/contorller/GroupMemberController.java @@ -33,6 +33,7 @@ import org.springframework.http.MediaType; import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.ModelAttribute; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; @@ -88,7 +89,7 @@ public class GroupMemberController { @RequestMapping(value = {"/add"}) @ResponseBody - public ResponseEntity addGroupMember(@ModelAttribute("groupMember") GroupMember groupMember,@CurrentUser UserInfo currentUser) { + public ResponseEntity addGroupMember(@RequestBody GroupMember groupMember,@CurrentUser UserInfo currentUser) { if (groupMember == null || groupMember.getGroupId() == null) { return new Message(Message.FAIL).buildResponse(); } diff --git a/maxkey-webs/maxkey-web-mgt/src/main/java/org/maxkey/web/apps/contorller/ApplicationsController.java b/maxkey-webs/maxkey-web-mgt/src/main/java/org/maxkey/web/apps/contorller/ApplicationsController.java index f402961b9..0ca6d934f 100644 --- a/maxkey-webs/maxkey-web-mgt/src/main/java/org/maxkey/web/apps/contorller/ApplicationsController.java +++ b/maxkey-webs/maxkey-web-mgt/src/main/java/org/maxkey/web/apps/contorller/ApplicationsController.java @@ -58,7 +58,7 @@ public class ApplicationsController extends BaseAppContorller { public ResponseEntity init() { Apps app=new Apps(); app.setId(app.generateId()); - app.setProtocol(ConstsProtocols.FORMBASED); + app.setProtocol(ConstsProtocols.BASIC); app.setSecret(ReciprocalUtils.generateKey("")); return new Message(app).buildResponse(); } diff --git a/maxkey-webs/maxkey-web-mgt/src/main/java/org/maxkey/web/apps/contorller/SAML20DetailsController.java b/maxkey-webs/maxkey-web-mgt/src/main/java/org/maxkey/web/apps/contorller/SAML20DetailsController.java index cffc35062..3c91c2185 100644 --- a/maxkey-webs/maxkey-web-mgt/src/main/java/org/maxkey/web/apps/contorller/SAML20DetailsController.java +++ b/maxkey-webs/maxkey-web-mgt/src/main/java/org/maxkey/web/apps/contorller/SAML20DetailsController.java @@ -146,25 +146,28 @@ public class SAML20DetailsController extends BaseAppContorller { protected AppsSAML20Details transform(AppsSAML20Details samlDetails) throws Exception{ super.transform(samlDetails); + ByteArrayInputStream bArrayInputStream = null; + if(StringUtils.isNotBlank(samlDetails.getMetaFileId())) { + bArrayInputStream = new ByteArrayInputStream( + fileUploadService.get(samlDetails.getMetaFileId()).getUploaded()); + fileUploadService.remove(samlDetails.getMetaFileId()); + } if(StringUtils.isNotBlank(samlDetails.getFileType())){ - if(StringUtils.isNotBlank(samlDetails.getMetaFileId())) { - ByteArrayInputStream bArrayInputStream = new ByteArrayInputStream( - fileUploadService.get(samlDetails.getMetaFileId()).getUploaded());; - if(samlDetails.getFileType().equals("certificate")){//certificate file - try { - X509Certificate trustCert = X509CertUtils.loadCertFromInputStream(bArrayInputStream); - samlDetails.setTrustCert(trustCert); - } catch (IOException e) { - _logger.error("read certificate file error .", e); - throw new Exception("read certificate file error", e); + if(samlDetails.getFileType().equals("certificate")){//certificate file + try { + if(bArrayInputStream != null) { + samlDetails.setTrustCert( + X509CertUtils.loadCertFromInputStream(bArrayInputStream)); } - }else if(samlDetails.getFileType().equals("metadata_file")){//metadata file + } catch (IOException e) { + _logger.error("read certificate file error .", e); + } + }else if(samlDetails.getFileType().equals("metadata_file")){//metadata file + if(bArrayInputStream != null) { samlDetails = resolveMetaData(samlDetails,bArrayInputStream); } - } - - if(samlDetails.getFileType().equals("metadata_url") + }else if(samlDetails.getFileType().equals("metadata_url") &&StringUtils.isNotBlank(samlDetails.getMetaUrl())){//metadata url CloseableHttpClient httpClient = HttpClients.createDefault(); HttpPost post = new HttpPost(samlDetails.getMetaUrl()); @@ -173,27 +176,27 @@ public class SAML20DetailsController extends BaseAppContorller { response.close(); httpClient.close(); } + } - if(samlDetails.getTrustCert()!=null) { - samlDetails.setCertSubject(samlDetails.getTrustCert().getSubjectDN().getName()); - samlDetails.setCertExpiration(samlDetails.getTrustCert().getNotAfter().toString()); - - samlDetails.setCertIssuer(X509CertUtils.getCommonName(samlDetails.getTrustCert().getIssuerX500Principal())); - - KeyStore keyStore = KeyStoreUtil.clone(idpKeyStoreLoader.getKeyStore(),idpKeyStoreLoader.getKeystorePassword()); - - KeyStore trustKeyStore = null; - if (!samlDetails.getEntityId().equals("")) { - trustKeyStore = KeyStoreUtil.importTrustCertificate(keyStore,samlDetails.getTrustCert(), samlDetails.getEntityId()); - } else { - trustKeyStore = KeyStoreUtil.importTrustCertificate(keyStore,samlDetails.getTrustCert()); - } - - byte[] keyStoreByte = KeyStoreUtil.keyStore2Bytes(trustKeyStore,idpKeyStoreLoader.getKeystorePassword()); - - // store KeyStore content - samlDetails.setKeyStore(keyStoreByte); + if(samlDetails.getTrustCert()!=null) { + samlDetails.setCertSubject(samlDetails.getTrustCert().getSubjectDN().getName()); + samlDetails.setCertExpiration(samlDetails.getTrustCert().getNotAfter().toString()); + + samlDetails.setCertIssuer(X509CertUtils.getCommonName(samlDetails.getTrustCert().getIssuerX500Principal())); + + KeyStore keyStore = KeyStoreUtil.clone(idpKeyStoreLoader.getKeyStore(),idpKeyStoreLoader.getKeystorePassword()); + + KeyStore trustKeyStore = null; + if (!samlDetails.getEntityId().equals("")) { + trustKeyStore = KeyStoreUtil.importTrustCertificate(keyStore,samlDetails.getTrustCert(), samlDetails.getEntityId()); + } else { + trustKeyStore = KeyStoreUtil.importTrustCertificate(keyStore,samlDetails.getTrustCert()); } + + byte[] keyStoreByte = KeyStoreUtil.keyStore2Bytes(trustKeyStore,idpKeyStoreLoader.getKeystorePassword()); + + // store KeyStore content + samlDetails.setKeyStore(keyStoreByte); } return samlDetails; } diff --git a/maxkey-webs/maxkey-web-mgt/src/main/java/org/maxkey/web/config/contorller/InstitutionsController.java b/maxkey-webs/maxkey-web-mgt/src/main/java/org/maxkey/web/config/contorller/InstitutionsController.java index 86d86eeca..ba62a0aec 100644 --- a/maxkey-webs/maxkey-web-mgt/src/main/java/org/maxkey/web/config/contorller/InstitutionsController.java +++ b/maxkey-webs/maxkey-web-mgt/src/main/java/org/maxkey/web/config/contorller/InstitutionsController.java @@ -17,57 +17,45 @@ package org.maxkey.web.config.contorller; -import org.maxkey.constants.ConstsOperateMessage; +import org.maxkey.authn.annotation.CurrentUser; import org.maxkey.entity.Institutions; +import org.maxkey.entity.Message; +import org.maxkey.entity.UserInfo; import org.maxkey.persistence.service.InstitutionsService; -import org.maxkey.web.WebContext; -import org.maxkey.web.message.Message; -import org.maxkey.web.message.MessageType; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.MediaType; +import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Controller; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.ModelAttribute; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; -import org.springframework.web.servlet.ModelAndView; @Controller -@RequestMapping(value={"/institutions"}) +@RequestMapping(value={"/config/institutions"}) public class InstitutionsController { - - final static Logger _logger = LoggerFactory.getLogger(InstitutionsController.class); @Autowired private InstitutionsService institutionsService; - /** - * 读取 - * @return - */ - @RequestMapping(value={"/forward"}) - public ModelAndView forward(){ - Institutions institutions = institutionsService.get(WebContext.getUserInfo().getInstId()); - return new ModelAndView("institutions/updateInstitutions","model",institutions); + @RequestMapping(value={"/get"}, produces = {MediaType.APPLICATION_JSON_VALUE}) + public ResponseEntity get(@CurrentUser UserInfo currentUser){ + Institutions institutions = institutionsService.get(currentUser.getInstId()); + return new Message(Message.SUCCESS,institutions).buildResponse(); } - /** - * 更新 - * @param sysConfig - * @return - */ - @RequestMapping(value={"/update"}) - @ResponseBody - public Message updat(@ModelAttribute("institutions") Institutions institutions,BindingResult result) { + @RequestMapping(value={"/update"}, produces = {MediaType.APPLICATION_JSON_VALUE}) + public ResponseEntity update( + @RequestBody Institutions institutions, + @CurrentUser UserInfo currentUser, + BindingResult result) { _logger.debug("updateRole institutions : "+institutions); if(institutionsService.update(institutions)) { - return new Message(WebContext.getI18nValue(ConstsOperateMessage.UPDATE_SUCCESS),MessageType.success); + return new Message(Message.SUCCESS).buildResponse(); } else { - return new Message(WebContext.getI18nValue(ConstsOperateMessage.UPDATE_ERROR),MessageType.error); + return new Message(Message.FAIL).buildResponse(); } } - - } diff --git a/maxkey-webs/maxkey-web-mgt/src/main/java/org/maxkey/web/contorller/LoginEndpoint.java b/maxkey-webs/maxkey-web-mgt/src/main/java/org/maxkey/web/contorller/LoginEndpoint.java index 130c6b583..a0b13d842 100644 --- a/maxkey-webs/maxkey-web-mgt/src/main/java/org/maxkey/web/contorller/LoginEndpoint.java +++ b/maxkey-webs/maxkey-web-mgt/src/main/java/org/maxkey/web/contorller/LoginEndpoint.java @@ -77,8 +77,8 @@ public class LoginEndpoint { ModelAndView modelAndView = new ModelAndView(); Institutions inst = (Institutions)WebContext.getAttribute(WebConstants.CURRENT_INST); modelAndView.addObject("isRemeberMe", applicationConfig.getLoginConfig().isRemeberMe()); - modelAndView.addObject("isCaptcha", inst.isTrueCaptchaSupport()); - modelAndView.addObject("captcha", inst.getCaptcha()); + modelAndView.addObject("captchaSupport", inst.getCaptchaSupport()); + modelAndView.addObject("captchaType", inst.getCaptchaType()); modelAndView.addObject("sessionid", WebContext.getSession().getId()); Object loginErrorMessage=WebContext.getAttribute(WebConstants.LOGIN_ERROR_SESSION_MESSAGE); modelAndView.addObject("loginErrorMessage", loginErrorMessage==null?"":loginErrorMessage); diff --git a/maxkey-webs/maxkey-web-mgt/src/main/java/org/maxkey/web/historys/contorller/SystemLogsController.java b/maxkey-webs/maxkey-web-mgt/src/main/java/org/maxkey/web/historys/contorller/SystemLogsController.java index 29599f833..70e0296a4 100644 --- a/maxkey-webs/maxkey-web-mgt/src/main/java/org/maxkey/web/historys/contorller/SystemLogsController.java +++ b/maxkey-webs/maxkey-web-mgt/src/main/java/org/maxkey/web/historys/contorller/SystemLogsController.java @@ -21,7 +21,7 @@ import java.text.SimpleDateFormat; import java.util.Date; import org.apache.mybatis.jpa.persistence.JpaPageResults; import org.maxkey.authn.annotation.CurrentUser; -import org.maxkey.entity.HistoryLogs; +import org.maxkey.entity.HistorySystemLogs; import org.maxkey.entity.Message; import org.maxkey.entity.UserInfo; import org.maxkey.persistence.service.HistorySystemLogsService; @@ -60,11 +60,11 @@ final static Logger _logger = LoggerFactory.getLogger(SystemLogsController.class */ @RequestMapping(value={"/systemLogs/fetch"}) @ResponseBody - public ResponseEntity fetch(@ModelAttribute("historyLog") HistoryLogs historyLog, + public ResponseEntity fetch(@ModelAttribute("historyLog") HistorySystemLogs historyLog, @CurrentUser UserInfo currentUser){ _logger.debug("historys/historyLog/fetch {} ",historyLog); historyLog.setInstId(currentUser.getInstId()); - return new Message>( + return new Message>( historySystemLogsService.queryPageResults(historyLog) ).buildResponse(); } diff --git a/maxkey-webs/maxkey-web-mgt/src/main/java/org/maxkey/web/interceptor/HistoryLogsAdapter.java b/maxkey-webs/maxkey-web-mgt/src/main/java/org/maxkey/web/interceptor/HistoryLogsAdapter.java index b31a5b032..399b93a7b 100644 --- a/maxkey-webs/maxkey-web-mgt/src/main/java/org/maxkey/web/interceptor/HistoryLogsAdapter.java +++ b/maxkey-webs/maxkey-web-mgt/src/main/java/org/maxkey/web/interceptor/HistoryLogsAdapter.java @@ -19,10 +19,9 @@ package org.maxkey.web.interceptor; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; -import org.maxkey.entity.HistoryLogs; +import org.maxkey.entity.HistorySystemLogs; import org.maxkey.entity.UserInfo; import org.maxkey.persistence.service.HistorySystemLogsService; -import org.maxkey.util.JsonUtils; import org.maxkey.web.WebContext; import org.maxkey.web.message.Message; import org.maxkey.web.message.MessageScope; @@ -58,20 +57,14 @@ public class HistoryLogsAdapter implements AsyncHandlerInterceptor { if(message.getMessageScope() == MessageScope.DB || message.getMessageScope() == MessageScope.DB_CLIENT) {//判断message类型 UserInfo userInfo =WebContext.getUserInfo();//取得当前用户信息 //创建日志记录 - HistoryLogs historyLog = new HistoryLogs( - message.getServiceName(), - message.getCode(), - message.getMessage(), - JsonUtils.object2Json(message.getMessageObject()), - message.getMessageType().toString(), - message.getOperateType().toString(), - userInfo==null?null:userInfo.getId(), - userInfo==null?null:userInfo.getUsername(), - "" - ); - historyLog.setInstId(userInfo.getInstId()); - _logger.debug("insert db logs content : " + historyLog); - historySystemLogsService.insert(historyLog);//日志插入数据库 + HistorySystemLogs historySystemLog = new HistorySystemLogs(); + historySystemLog.setTopic(message.getTopic()); + historySystemLog.setUserId(userInfo.getId()); + historySystemLog.setUsername(userInfo.getUsername()); + historySystemLog.setDisplayName(userInfo.getDisplayName()); + historySystemLog.setInstId(userInfo.getInstId()); + _logger.debug("insert db logs content : " + historySystemLog); + historySystemLogsService.insert(historySystemLog);//日志插入数据库 if(message.getMessageScope() == MessageScope.DB) {//message类型仅插入数据库 WebContext.clearMessage();//清除message } diff --git a/maxkey-webs/maxkey-web-mgt/src/main/java/org/maxkey/web/permissions/contorller/RoleMemberController.java b/maxkey-webs/maxkey-web-mgt/src/main/java/org/maxkey/web/permissions/contorller/RoleMemberController.java index 08de5ae90..e1700f819 100644 --- a/maxkey-webs/maxkey-web-mgt/src/main/java/org/maxkey/web/permissions/contorller/RoleMemberController.java +++ b/maxkey-webs/maxkey-web-mgt/src/main/java/org/maxkey/web/permissions/contorller/RoleMemberController.java @@ -32,6 +32,7 @@ import org.springframework.http.MediaType; import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.ModelAttribute; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; @@ -85,7 +86,7 @@ public class RoleMemberController { @RequestMapping(value = {"/add"}) @ResponseBody - public ResponseEntity add(@ModelAttribute RoleMember roleMember,@CurrentUser UserInfo currentUser) { + public ResponseEntity add(@RequestBody RoleMember roleMember,@CurrentUser UserInfo currentUser) { if (roleMember == null || roleMember.getRoleId() == null) { return new Message(Message.FAIL).buildResponse(); }