拆分模块
This commit is contained in:
47
server/src/main/resources/application.properties
Normal file
47
server/src/main/resources/application.properties
Normal file
@@ -0,0 +1,47 @@
|
||||
spring.application.name=Contract-Manager
|
||||
spring.main.lazy-initialization=true
|
||||
logging.level.root=INFO
|
||||
logging.pattern.console=%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n
|
||||
# spring.datasource.driver-class-name=
|
||||
#u8.datasource.type=mssql
|
||||
#u8.datasource.url=jdbc:sqlserver://10.84.209.251;databaseName=UFDATA_001_2017;encrypt=false;trustServerCertificate=true
|
||||
#u8.datasource.username=sa
|
||||
#u8.datasource.password=dqkl.com
|
||||
#u8.datasource.driver-class-name=com.microsoft.sqlserver.jdbc.SQLServerDriver
|
||||
# datasource
|
||||
|
||||
# db server use domain, it need dns support.
|
||||
#spring.datasource.hikari.jdbc-url=jdbc:mysql://db-server1.ecctrl.com/supplier_ms
|
||||
#spring.datasource.username=ecep
|
||||
#spring.datasource.password=ecep.623356561
|
||||
#spring.datasource.type=com.zaxxer.hikari.HikariDataSource
|
||||
#spring.datasource.hikari.driver-class-name=com.mysql.cj.jdbc.Driver
|
||||
# jpa update
|
||||
spring.jpa.hibernate.ddl-auto=none
|
||||
#spring.jpa.hibernate.naming.implicit-strategy=org.springframework.boot.orm.jpa.hibernate.SpringImplicitNamingStrategy
|
||||
spring.jpa.hibernate.naming.physical-strategy=org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
|
||||
spring.jpa.show-sql=false
|
||||
# spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQLDialect
|
||||
spring.data.jpa.repositories.enabled=true
|
||||
|
||||
spring.lifecycle.performance.enabled=true
|
||||
# my.downloadsPath = C:\\Users\\SQQ\\Downloads\\
|
||||
spring.data.redis.host=10.84.209.229
|
||||
spring.data.redis.database=3
|
||||
|
||||
logging.level.org.hibernate.tool.hbm2ddl=DEBUG
|
||||
|
||||
# 在application.properties中添加
|
||||
logging.level.org.springframework.boot.context.metrics.buffering=DEBUG
|
||||
logging.level.com.ecep.contract.manager.SpringApp=DEBUG
|
||||
|
||||
# Redis缓存配置
|
||||
spring.cache.type=redis
|
||||
spring.cache.redis.time-to-live=6h
|
||||
spring.cache.redis.key-prefix=contract_manager_
|
||||
spring.cache.redis.use-key-prefix=true
|
||||
spring.cache.redis.cache-null-values=false
|
||||
|
||||
# Redis序列化配置
|
||||
spring.data.redis.serializer.key=org.springframework.data.redis.serializer.StringRedisSerializer
|
||||
spring.data.redis.serializer.value=org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer
|
||||
48
server/src/main/resources/logback.xml
Normal file
48
server/src/main/resources/logback.xml
Normal file
@@ -0,0 +1,48 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<configuration>
|
||||
<!-- 增加logback核心组件的日志级别,以查看详细的初始化信息 -->
|
||||
<logger name="ch.qos.logback" level="DEBUG"/>
|
||||
<logger name="ch.qos.logback.classic.util.ContextInitializer" level="TRACE"/>
|
||||
|
||||
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
|
||||
<encoder>
|
||||
<charset>UTF-8</charset>
|
||||
<pattern>%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n</pattern>
|
||||
</encoder>
|
||||
</appender>
|
||||
<appender name="DB" class="ch.qos.logback.classic.db.DBAppender">
|
||||
|
||||
</appender>
|
||||
|
||||
<!-- 添加 FileAppender -->
|
||||
<appender name="FILE" class="ch.qos.logback.core.FileAppender">
|
||||
<file>logs/application.log</file> <!-- 日志文件路径 -->
|
||||
<append>true</append> <!-- 是否追加到文件 -->
|
||||
<encoder>
|
||||
<charset>UTF-8</charset>
|
||||
<pattern>%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n</pattern>
|
||||
</encoder>
|
||||
</appender>
|
||||
|
||||
<root level="DEBUG">
|
||||
<appender-ref ref="STDOUT"/> <appender-ref ref="FILE"/>
|
||||
</root>
|
||||
<logger name="com.ecep.contract.manager" level="warn"/>
|
||||
<logger name="com.ecep.contract.manager.Desktop" level="debug"/>
|
||||
<logger name="com.ecep.contract.manager.SpringApp" level="debug"/>
|
||||
<logger name="com.ecep.contract.manager.ui.service" level="info"/>
|
||||
|
||||
<logger name="com.ecep.contract.manager.ui.table.AbstEntityTableTabSkin" level="debug"/>
|
||||
<logger name="com.ecep.contract.manager.ui.table.cell.AsyncUpdateTableCell" level="warn"/>
|
||||
<logger name="com.ecep.contract.manager.ui.AbstEntityManagerSkin" level="debug"/>
|
||||
<logger name="com.ecep.contract.manager.ui.BaseController" level="debug"/>
|
||||
<logger name="com.ecep.contract.manager.ui.controller" level="info"/>
|
||||
<logger name="com.ecep.contract.manager.ui.task.MonitoredTask" level="debug"/>
|
||||
<logger name="com.ecep.contract.manager.ds.other.controller.HomeWindowController" level="debug"/>
|
||||
<logger name="com.ecep.contract.manager.ds.company.controller.CompanyWindowController" level="debug"/>
|
||||
<logger name="com.ecep.contract.manager.ds.customer.controller.CompanyCustomerWindowController" level="debug"/>
|
||||
<logger name="com.ecep.contract.manager.cloud" level="debug"/>
|
||||
<logger name="com.ecep.contract.manager.cloud.u8.ContractSyncTask" level="debug"/>
|
||||
|
||||
|
||||
</configuration>
|
||||
4
server/src/main/resources/messages.properties
Normal file
4
server/src/main/resources/messages.properties
Normal file
@@ -0,0 +1,4 @@
|
||||
ui.vendor.title = [{0}] {1} Vendor
|
||||
|
||||
|
||||
ui.customer.title = [{0}] {1} Customer
|
||||
4
server/src/main/resources/messages_zh_CN.properties
Normal file
4
server/src/main/resources/messages_zh_CN.properties
Normal file
@@ -0,0 +1,4 @@
|
||||
ui.vendor.title = [{0}] {1} 供应商
|
||||
|
||||
|
||||
ui.customer.title = [{0}] {1} 客户
|
||||
111
server/src/main/resources/static/login.html
Normal file
111
server/src/main/resources/static/login.html
Normal file
@@ -0,0 +1,111 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="zh-CN">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>合同管理系统 - 登录</title>
|
||||
<style>
|
||||
body {
|
||||
font-family: Arial, sans-serif;
|
||||
background-color: #f5f5f5;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
height: 100vh;
|
||||
}
|
||||
.login-container {
|
||||
background-color: white;
|
||||
padding: 40px;
|
||||
border-radius: 8px;
|
||||
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
|
||||
width: 100%;
|
||||
max-width: 400px;
|
||||
}
|
||||
.login-header {
|
||||
text-align: center;
|
||||
margin-bottom: 30px;
|
||||
}
|
||||
.login-header h2 {
|
||||
color: #333;
|
||||
margin: 0;
|
||||
}
|
||||
.form-group {
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
.form-group label {
|
||||
display: block;
|
||||
margin-bottom: 8px;
|
||||
color: #555;
|
||||
font-weight: bold;
|
||||
}
|
||||
.form-group input {
|
||||
width: 100%;
|
||||
padding: 10px;
|
||||
border: 1px solid #ddd;
|
||||
border-radius: 4px;
|
||||
font-size: 16px;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
.form-group input:focus {
|
||||
border-color: #4CAF50;
|
||||
outline: none;
|
||||
}
|
||||
.btn-submit {
|
||||
width: 100%;
|
||||
padding: 12px;
|
||||
background-color: #4CAF50;
|
||||
color: white;
|
||||
border: none;
|
||||
border-radius: 4px;
|
||||
font-size: 16px;
|
||||
cursor: pointer;
|
||||
transition: background-color 0.3s;
|
||||
}
|
||||
.btn-submit:hover {
|
||||
background-color: #45a049;
|
||||
}
|
||||
.error-message {
|
||||
color: #f44336;
|
||||
margin-top: 15px;
|
||||
text-align: center;
|
||||
}
|
||||
.basic-auth-info {
|
||||
margin-top: 20px;
|
||||
text-align: center;
|
||||
color: #666;
|
||||
font-size: 14px;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div class="login-container">
|
||||
<div class="login-header">
|
||||
<h2>合同管理系统</h2>
|
||||
</div>
|
||||
<form action="/login" method="post">
|
||||
<div class="form-group">
|
||||
<label for="username">用户名</label>
|
||||
<input type="text" id="username" name="username" required autofocus>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label for="password">密码</label>
|
||||
<input type="password" id="password" name="password" required>
|
||||
</div>
|
||||
<input type="submit" class="btn-submit" value="登录">
|
||||
</form>
|
||||
|
||||
<!-- 显示登录错误信息 -->
|
||||
<#if error??>
|
||||
<div class="error-message">
|
||||
登录失败:用户名或密码错误
|
||||
</div>
|
||||
</#if>
|
||||
|
||||
<div class="basic-auth-info">
|
||||
系统同时支持HTTP Basic认证
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user