Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
O
ocrCloudPlatformAdmin
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
ocr-cloud-platform
ocrCloudPlatformAdmin
Commits
8f0a4424
Commit
8f0a4424
authored
Jan 19, 2024
by
黄明步
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
.
parent
1a6b6a95
Show whitespace changes
Inline
Side-by-side
Showing
19 changed files
with
572 additions
and
95 deletions
+572
-95
pom.xml
+21
-0
src/main/java/com/mailu/ocrCloudPlatformAdmin/OcrCloudPlatformAdminApplication.java
+6
-1
src/main/java/com/mailu/ocrCloudPlatformAdmin/config/FeignConfig.java
+74
-0
src/main/java/com/mailu/ocrCloudPlatformAdmin/controller/AppAbilityRecordAllController.java
+50
-10
src/main/java/com/mailu/ocrCloudPlatformAdmin/controller/ViewController.java
+21
-2
src/main/java/com/mailu/ocrCloudPlatformAdmin/dto/AppAbilityRecordAllDto.java
+12
-0
src/main/java/com/mailu/ocrCloudPlatformAdmin/feign/ApiFeignClient.java
+19
-0
src/main/java/com/mailu/ocrCloudPlatformAdmin/response/Result.java
+3
-0
src/main/java/com/mailu/ocrCloudPlatformAdmin/service/impl/AppAbilityRecordAllServiceImpl.java
+24
-21
src/main/java/com/mailu/ocrCloudPlatformAdmin/utils/CourtUtil.java
+9
-0
src/main/java/com/mailu/ocrCloudPlatformAdmin/vo/AppAbilityRecordVo.java
+48
-0
src/main/resources/application-prod.yml
+12
-8
src/main/resources/application.yml
+18
-0
src/main/resources/static/img/bg.png
+0
-0
src/main/resources/templates/appAbilityRecord/list.html
+26
-34
src/main/resources/templates/home/console.html
+1
-1
src/main/resources/templates/home/welcome.html
+6
-6
src/main/resources/templates/index.html
+17
-12
src/main/resources/templates/indexOld.html
+205
-0
No files found.
pom.xml
View file @
8f0a4424
...
@@ -17,10 +17,31 @@
...
@@ -17,10 +17,31 @@
<properties>
<properties>
<java.version>
1.8
</java.version>
<java.version>
1.8
</java.version>
<spring-cloud.version>
Hoxton.SR11
</spring-cloud.version>
</properties>
</properties>
<dependencyManagement>
<dependencies>
<dependencies>
<dependency>
<dependency>
<groupId>
org.springframework.cloud
</groupId>
<artifactId>
spring-cloud-dependencies
</artifactId>
<version>
${spring-cloud.version}
</version>
<type>
pom
</type>
<scope>
import
</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>
org.springframework.cloud
</groupId>
<artifactId>
spring-cloud-starter-netflix-eureka-client
</artifactId>
</dependency>
<dependency>
<groupId>
org.springframework.cloud
</groupId>
<artifactId>
spring-cloud-starter-openfeign
</artifactId>
</dependency>
<dependency>
<groupId>
org.springframework.boot
</groupId>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-starter-thymeleaf
</artifactId>
<artifactId>
spring-boot-starter-thymeleaf
</artifactId>
</dependency>
</dependency>
...
...
src/main/java/com/mailu/ocrCloudPlatformAdmin/OcrCloudPlatformAdminApplication.java
View file @
8f0a4424
package
com
.
mailu
.
ocrCloudPlatformAdmin
;
package
com
.
mailu
.
ocrCloudPlatformAdmin
;
import
com.github.pagehelper.autoconfigure.PageHelperAutoConfiguration
;
import
org.springframework.boot.SpringApplication
;
import
org.springframework.boot.SpringApplication
;
import
org.springframework.boot.autoconfigure.SpringBootApplication
;
import
org.springframework.boot.autoconfigure.SpringBootApplication
;
import
org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration
;
import
org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration
;
import
org.springframework.boot.builder.SpringApplicationBuilder
;
import
org.springframework.boot.builder.SpringApplicationBuilder
;
import
org.springframework.boot.web.servlet.support.SpringBootServletInitializer
;
import
org.springframework.boot.web.servlet.support.SpringBootServletInitializer
;
import
org.springframework.cloud.netflix.eureka.EnableEurekaClient
;
import
org.springframework.cloud.openfeign.EnableFeignClients
;
@SpringBootApplication
(
exclude
=
{
DataSourceAutoConfiguration
.
class
})
@SpringBootApplication
(
exclude
=
{
DataSourceAutoConfiguration
.
class
,
PageHelperAutoConfiguration
.
class
})
@EnableEurekaClient
@EnableFeignClients
public
class
OcrCloudPlatformAdminApplication
extends
SpringBootServletInitializer
{
public
class
OcrCloudPlatformAdminApplication
extends
SpringBootServletInitializer
{
public
static
void
main
(
String
[]
args
)
{
public
static
void
main
(
String
[]
args
)
{
...
...
src/main/java/com/mailu/ocrCloudPlatformAdmin/config/FeignConfig.java
0 → 100644
View file @
8f0a4424
package
com
.
mailu
.
ocrCloudPlatformAdmin
.
config
;
import
feign.RequestInterceptor
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.web.context.request.RequestAttributes
;
import
org.springframework.web.context.request.RequestContextHolder
;
import
org.springframework.web.context.request.ServletRequestAttributes
;
import
javax.servlet.http.HttpServletRequest
;
import
java.util.Arrays
;
import
java.util.Enumeration
;
import
java.util.List
;
@Configuration
public
class
FeignConfig
{
/**
* 转发请求头
*/
private
static
final
List
<
String
>
FORWARD_HEADERS
=
Arrays
.
asList
(
"AUTHORIZATION"
,
"X-FORWARDED-FOR"
,
"X-FORWARDED-PROTO"
,
"X-FORWARDED-PORT"
,
"X-FORWARDED-HOST"
,
"FORWARDED"
,
"PROXY-CLIENT-IP"
,
"WL-PROXY-CLIENT-IP"
,
"HTTP_X_FORWARDED_FOR"
,
"HTTP_X_FORWARDED"
,
"HTTP_X_CLUSTER_CLIENT_IP"
,
"HTTP_CLIENT_IP"
,
"HTTP_FORWARDED_FOR"
,
"HTTP_FORWARDED"
,
"HTTP_VIA"
,
"REMOTE_ADDR"
,
"X-REAL-IP"
,
"HOST"
);
/**
* 解决fein远程调用丢失请求头
*
* @return
*/
@Bean
public
RequestInterceptor
requestInterceptor
()
{
return
template
->
{
RequestAttributes
requestAttributes
=
RequestContextHolder
.
getRequestAttributes
();
if
(
requestAttributes
==
null
)
{
return
;
}
HttpServletRequest
request
=
((
ServletRequestAttributes
)
requestAttributes
).
getRequest
();
template
.
header
(
"X-Api-Token"
,
request
.
getParameter
(
"token"
));
Enumeration
<
String
>
headerNames
=
request
.
getHeaderNames
();
if
(
headerNames
!=
null
)
{
while
(
headerNames
.
hasMoreElements
())
{
String
name
=
headerNames
.
nextElement
();
// 不要设置content-length
if
(
"content-length"
.
equals
(
name
))
{
continue
;
}
if
(
FORWARD_HEADERS
.
contains
(
name
.
toUpperCase
()))
{
String
values
=
request
.
getHeader
(
name
);
template
.
header
(
name
,
values
);
}
}
}
};
}
}
src/main/java/com/mailu/ocrCloudPlatformAdmin/controller/AppAbilityRecordAllController.java
View file @
8f0a4424
package
com
.
mailu
.
ocrCloudPlatformAdmin
.
controller
;
package
com
.
mailu
.
ocrCloudPlatformAdmin
.
controller
;
import
cn.hutool.core.collection.CollUtil
;
import
cn.hutool.core.util.StrUtil
;
import
cn.hutool.core.util.StrUtil
;
import
com.mailu.ocrCloudPlatformAdmin.constant.RedisConstant
;
import
com.mailu.ocrCloudPlatformAdmin.constant.RedisConstant
;
import
com.mailu.ocrCloudPlatformAdmin.constant.RoleConstant
;
import
com.mailu.ocrCloudPlatformAdmin.constant.RoleConstant
;
...
@@ -21,9 +22,11 @@ import org.springframework.web.bind.annotation.RestController;
...
@@ -21,9 +22,11 @@ import org.springframework.web.bind.annotation.RestController;
import
javax.annotation.Resource
;
import
javax.annotation.Resource
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.Arrays
;
import
java.util.LinkedList
;
import
java.util.LinkedList
;
import
java.util.List
;
import
java.util.List
;
import
java.util.concurrent.TimeUnit
;
import
java.util.concurrent.TimeUnit
;
import
java.util.stream.Collectors
;
/**
/**
* @author: HuangHao
* @author: HuangHao
...
@@ -116,32 +119,69 @@ public class AppAbilityRecordAllController {
...
@@ -116,32 +119,69 @@ public class AppAbilityRecordAllController {
}
}
// @PostMapping("/getListByPage")
// public Result getListByPage(AppAbilityRecordAllDto dto) {
// String roleName = UserUtil.getCurrentUserRole();
// //是否是管理员
// if (RoleConstant.ADMIN.equals(roleName)) {
// if (dto.getCourtId() != null) {
// List<Integer> courtCodeList = new ArrayList<>();
// courtCodeList.add(dto.getCourtId());
// dto.setCourtCodeList(courtCodeList);
// }
// return appAbilityRecordAllService.getListByPage(dto);
// }
// //获取用户所有的法庭信息
// DoorUser currentUser = UserUtil.getCurrentUser();
// List<Court> courts = redisService.getList(RedisConstant.COURT_INFO_USER_PREFIX + currentUser.getYouxiang(), Court.class, 1L, TimeUnit.DAYS);
// if (courts != null) {
// List<Integer> courtCodeList = new ArrayList<>();
// if (dto.getCourtId() != null && CourtUtil.exist(courts, dto.getCourtId())) {
// courtCodeList.add(dto.getCourtId());
// } else {
// //查全部
// for (Court court : courts) {
// courtCodeList.add(court.getCourtCode());
// }
// }
// dto.setCourtCodeList(courtCodeList);
// //业务管理员
// if (roleName.startsWith(RoleConstant.BUSINESS)) {
// Role role = roleService.selectByName(roleName);
// dto.setDescription(role.getNameZh());
// }
// return appAbilityRecordAllService.getListByPage(dto);
// }
// return Result.error("");
// }
@PostMapping
(
"/getListByPage"
)
@PostMapping
(
"/getListByPage"
)
public
Result
getListByPage
(
AppAbilityRecordAllDto
dto
)
{
public
Result
getListByPage
(
AppAbilityRecordAllDto
dto
)
{
String
roleName
=
UserUtil
.
getCurrentUserRole
();
String
roleName
=
UserUtil
.
getCurrentUserRole
();
List
<
String
>
ipScopeList
=
new
ArrayList
<>();
//是否是管理员
//是否是管理员
if
(
RoleConstant
.
ADMIN
.
equals
(
roleName
))
{
if
(
RoleConstant
.
ADMIN
.
equals
(
roleName
))
{
if
(
dto
.
getCourtId
()
!=
null
)
{
if
(
StrUtil
.
isNotBlank
(
dto
.
getIpScope
()))
{
List
<
Integer
>
courtCodeList
=
new
ArrayList
<>();
ipScopeList
=
Arrays
.
stream
(
dto
.
getIpScope
().
split
(
";"
)).
collect
(
Collectors
.
toList
());
courtCodeList
.
add
(
dto
.
getCourtId
());
dto
.
setIpScopeList
(
ipScopeList
);
dto
.
setCourtCodeList
(
courtCodeList
);
}
}
return
appAbilityRecordAllService
.
getListByPage
(
dto
);
return
appAbilityRecordAllService
.
getListByPage
(
dto
);
}
}
//获取用户所有的法庭信息
//获取用户所有的法庭信息
DoorUser
currentUser
=
UserUtil
.
getCurrentUser
();
DoorUser
currentUser
=
UserUtil
.
getCurrentUser
();
List
<
Court
>
courts
=
redisService
.
getList
(
RedisConstant
.
COURT_INFO_USER_PREFIX
+
currentUser
.
getYouxiang
(),
Court
.
class
,
1L
,
TimeUnit
.
DAYS
);
List
<
Court
>
courts
=
redisService
.
getList
(
RedisConstant
.
COURT_INFO_USER_PREFIX
+
currentUser
.
getYouxiang
(),
Court
.
class
,
1L
,
TimeUnit
.
DAYS
);
if
(
courts
!=
null
)
{
if
(
CollUtil
.
isNotEmpty
(
courts
)
)
{
List
<
Integer
>
courtCodeList
=
new
ArrayList
<>();
if
(
StrUtil
.
isNotBlank
(
dto
.
getIpScope
())
&&
CourtUtil
.
existByIpScope
(
courts
,
dto
.
getIpScope
()))
{
if
(
dto
.
getCourtId
()
!=
null
&&
CourtUtil
.
exist
(
courts
,
dto
.
getCourtId
()))
{
List
<
String
>
collect
=
Arrays
.
stream
(
dto
.
getIpScope
().
split
(
";"
)).
collect
(
Collectors
.
toList
());
courtCodeList
.
add
(
dto
.
getCourtId
()
);
ipScopeList
.
addAll
(
collect
);
}
else
{
}
else
{
//查全部
//查全部
for
(
Court
court
:
courts
)
{
for
(
Court
court
:
courts
)
{
courtCodeList
.
add
(
court
.
getCourtCode
());
List
<
String
>
collect
=
Arrays
.
stream
(
court
.
getIpScope
().
split
(
";"
)).
collect
(
Collectors
.
toList
());
ipScopeList
.
addAll
(
collect
);
}
}
}
}
dto
.
set
CourtCodeList
(
courtCod
eList
);
dto
.
set
IpScopeList
(
ipScop
eList
);
//业务管理员
//业务管理员
if
(
roleName
.
startsWith
(
RoleConstant
.
BUSINESS
))
{
if
(
roleName
.
startsWith
(
RoleConstant
.
BUSINESS
))
{
Role
role
=
roleService
.
selectByName
(
roleName
);
Role
role
=
roleService
.
selectByName
(
roleName
);
...
...
src/main/java/com/mailu/ocrCloudPlatformAdmin/controller/ViewController.java
View file @
8f0a4424
...
@@ -12,6 +12,7 @@ import com.mailu.ocrCloudPlatformAdmin.entity.Role;
...
@@ -12,6 +12,7 @@ import com.mailu.ocrCloudPlatformAdmin.entity.Role;
import
com.mailu.ocrCloudPlatformAdmin.filter.CasProperties
;
import
com.mailu.ocrCloudPlatformAdmin.filter.CasProperties
;
import
com.mailu.ocrCloudPlatformAdmin.service.CourtService
;
import
com.mailu.ocrCloudPlatformAdmin.service.CourtService
;
import
com.mailu.ocrCloudPlatformAdmin.service.MenuService
;
import
com.mailu.ocrCloudPlatformAdmin.service.MenuService
;
import
com.mailu.ocrCloudPlatformAdmin.service.RoleService
;
import
com.mailu.ocrCloudPlatformAdmin.utils.UserUtil
;
import
com.mailu.ocrCloudPlatformAdmin.utils.UserUtil
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
@@ -24,6 +25,7 @@ import org.springframework.web.bind.annotation.RequestParam;
...
@@ -24,6 +25,7 @@ import org.springframework.web.bind.annotation.RequestParam;
import
javax.annotation.Resource
;
import
javax.annotation.Resource
;
import
java.util.*
;
import
java.util.*
;
import
java.util.stream.Collectors
;
@Slf4j
@Slf4j
@Controller
@Controller
...
@@ -41,6 +43,9 @@ public class ViewController {
...
@@ -41,6 +43,9 @@ public class ViewController {
@Resource
@Resource
private
CourtService
courtService
;
private
CourtService
courtService
;
@Resource
private
RoleService
roleService
;
/**
/**
* 个人消息列表
* 个人消息列表
*/
*/
...
@@ -163,7 +168,7 @@ public class ViewController {
...
@@ -163,7 +168,7 @@ public class ViewController {
}
}
@GetMapping
(
"/"
)
@GetMapping
(
"/"
)
public
String
consol
e
(
ModelMap
modelMap
)
{
public
String
welcom
e
(
ModelMap
modelMap
)
{
DoorUser
currentUser
=
UserUtil
.
getCurrentUser
();
DoorUser
currentUser
=
UserUtil
.
getCurrentUser
();
// System.out.println("---->"+currentUser);
// System.out.println("---->"+currentUser);
modelMap
.
put
(
"user"
,
currentUser
);
modelMap
.
put
(
"user"
,
currentUser
);
...
@@ -172,8 +177,22 @@ public class ViewController {
...
@@ -172,8 +177,22 @@ public class ViewController {
return
"home/welcome"
;
return
"home/welcome"
;
}
}
@GetMapping
(
"/
home/
console"
)
@GetMapping
(
"/console"
)
public
String
console
()
{
public
String
console
()
{
try
{
String
currentUserRole
=
UserUtil
.
getCurrentUserRole
();
// 查出当前用户的角色
Role
role
=
roleService
.
selectByName
(
currentUserRole
);
// // 查出当前用户角色拥有的菜单
List
<
Menu
>
menus
=
menuService
.
selectRoleId
(
role
.
getId
());
boolean
isContains
=
menus
.
stream
().
map
(
Menu:
:
getName
).
collect
(
Collectors
.
toList
()).
contains
(
"控制台"
);
if
(!
isContains
)
{
return
"redirect:/"
;
}
}
catch
(
Exception
e
)
{
log
.
error
(
"访问控制台失败"
,
e
);
return
"redirect:/"
;
}
return
"home/console"
;
return
"home/console"
;
}
}
...
...
src/main/java/com/mailu/ocrCloudPlatformAdmin/dto/AppAbilityRecordAllDto.java
View file @
8f0a4424
package
com
.
mailu
.
ocrCloudPlatformAdmin
.
dto
;
package
com
.
mailu
.
ocrCloudPlatformAdmin
.
dto
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.mailu.ocrCloudPlatformAdmin.entity.AppAbilityRecordAll
;
import
com.mailu.ocrCloudPlatformAdmin.entity.AppAbilityRecordAll
;
import
lombok.Data
;
import
lombok.Data
;
import
org.springframework.format.annotation.DateTimeFormat
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.List
;
/**
/**
...
@@ -18,4 +21,13 @@ public class AppAbilityRecordAllDto extends AppAbilityRecordAll {
...
@@ -18,4 +21,13 @@ public class AppAbilityRecordAllDto extends AppAbilityRecordAll {
private
Integer
network
;
private
Integer
network
;
private
String
description
;
private
String
description
;
private
List
<
Integer
>
courtCodeList
;
private
List
<
Integer
>
courtCodeList
;
private
String
ipScope
;
private
List
<
String
>
ipScopeList
;
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd"
,
timezone
=
"GMT+8"
)
private
Date
startTime
;
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd"
,
timezone
=
"GMT+8"
)
private
Date
endTime
;
}
}
src/main/java/com/mailu/ocrCloudPlatformAdmin/feign/ApiFeignClient.java
0 → 100644
View file @
8f0a4424
package
com
.
mailu
.
ocrCloudPlatformAdmin
.
feign
;
import
com.mailu.ocrCloudPlatformAdmin.config.FeignConfig
;
import
com.mailu.ocrCloudPlatformAdmin.dto.AppAbilityRecordAllDto
;
import
com.mailu.ocrCloudPlatformAdmin.response.Result
;
import
org.springframework.cloud.openfeign.FeignClient
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
/**
* @author Hmb
* @since 2024/1/16 11:42
*/
@FeignClient
(
name
=
"ocrCloudPlatformApi"
,
path
=
"/appAbilityRecordAll"
,
configuration
=
FeignConfig
.
class
)
public
interface
ApiFeignClient
{
@PostMapping
(
value
=
"/getListByPage"
)
Result
getListByPage
(
@RequestBody
AppAbilityRecordAllDto
dto
);
}
src/main/java/com/mailu/ocrCloudPlatformAdmin/response/Result.java
View file @
8f0a4424
...
@@ -43,6 +43,9 @@ public class Result {
...
@@ -43,6 +43,9 @@ public class Result {
this
.
data
=
data
;
this
.
data
=
data
;
}
}
public
Result
()
{
}
public
Result
(
Integer
code
,
String
msg
)
{
public
Result
(
Integer
code
,
String
msg
)
{
this
.
code
=
code
;
this
.
code
=
code
;
this
.
msg
=
msg
;
this
.
msg
=
msg
;
...
...
src/main/java/com/mailu/ocrCloudPlatformAdmin/service/impl/AppAbilityRecordAllServiceImpl.java
View file @
8f0a4424
package
com
.
mailu
.
ocrCloudPlatformAdmin
.
service
.
impl
;
package
com
.
mailu
.
ocrCloudPlatformAdmin
.
service
.
impl
;
import
cn.hutool.core.util.StrUtil
;
import
com.github.pagehelper.Page
;
import
com.github.pagehelper.PageHelper
;
import
com.mailu.ocrCloudPlatformAdmin.dto.AppAbilityRecordAllDto
;
import
com.mailu.ocrCloudPlatformAdmin.dto.AppAbilityRecordAllDto
;
import
com.mailu.ocrCloudPlatformAdmin.
entity.AppAbilityRecordAll
;
import
com.mailu.ocrCloudPlatformAdmin.
feign.ApiFeignClient
;
import
com.mailu.ocrCloudPlatformAdmin.mapper.AppAbilityRecordAllMapper
;
import
com.mailu.ocrCloudPlatformAdmin.mapper.AppAbilityRecordAllMapper
;
import
com.mailu.ocrCloudPlatformAdmin.mapper.ServerInfoMapper
;
import
com.mailu.ocrCloudPlatformAdmin.mapper.ServerInfoMapper
;
import
com.mailu.ocrCloudPlatformAdmin.response.Result
;
import
com.mailu.ocrCloudPlatformAdmin.response.Result
;
import
com.mailu.ocrCloudPlatformAdmin.service.AppAbilityRecordAllService
;
import
com.mailu.ocrCloudPlatformAdmin.service.AppAbilityRecordAllService
;
import
com.mailu.ocrCloudPlatformAdmin.vo.PageVo
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
import
javax.annotation.Resource
;
import
javax.annotation.Resource
;
import
java.util.List
;
/**
/**
* @author: HuangHao
* @author: HuangHao
...
@@ -29,22 +24,30 @@ public class AppAbilityRecordAllServiceImpl implements AppAbilityRecordAllServic
...
@@ -29,22 +24,30 @@ public class AppAbilityRecordAllServiceImpl implements AppAbilityRecordAllServic
@Resource
@Resource
private
AppAbilityRecordAllMapper
appAbilityRecordAllMapper
;
private
AppAbilityRecordAllMapper
appAbilityRecordAllMapper
;
@Resource
private
ApiFeignClient
apiFeignClient
;
// @Override
// public Result getListByPage(AppAbilityRecordAllDto dto) {
// List<String> serverIpList = serverInfoMapper.selectServerIpList(dto);
// if (serverIpList != null && serverIpList.size() > 0) {
// Page<AppAbilityRecordAll> page;
// if (StrUtil.isEmpty(dto.getDescription())) {
// page = PageHelper.startPage(dto.getPage(), dto.getLimit()).doSelectPage(()
// -> appAbilityRecordAllMapper.selectByCondition(serverIpList));
// }else {
// //业务系统管理员查询
// page = PageHelper.startPage(dto.getPage(), dto.getLimit()).doSelectPage(()
// -> appAbilityRecordAllMapper.selectByBusinessCondition(serverIpList,dto.getDescription()));
// }
// PageVo pageVo = new PageVo(page);
// return Result.success("", pageVo);
// }
// return Result.success("", new PageVo());
// }
@Override
@Override
public
Result
getListByPage
(
AppAbilityRecordAllDto
dto
)
{
public
Result
getListByPage
(
AppAbilityRecordAllDto
dto
)
{
List
<
String
>
serverIpList
=
serverInfoMapper
.
selectServerIpList
(
dto
);
return
apiFeignClient
.
getListByPage
(
dto
);
if
(
serverIpList
!=
null
&&
serverIpList
.
size
()
>
0
)
{
Page
<
AppAbilityRecordAll
>
page
;
if
(
StrUtil
.
isEmpty
(
dto
.
getDescription
()))
{
page
=
PageHelper
.
startPage
(
dto
.
getPage
(),
dto
.
getLimit
()).
doSelectPage
(()
->
appAbilityRecordAllMapper
.
selectByCondition
(
serverIpList
));
}
else
{
//业务系统管理员查询
page
=
PageHelper
.
startPage
(
dto
.
getPage
(),
dto
.
getLimit
()).
doSelectPage
(()
->
appAbilityRecordAllMapper
.
selectByBusinessCondition
(
serverIpList
,
dto
.
getDescription
()));
}
PageVo
pageVo
=
new
PageVo
(
page
);
return
Result
.
success
(
""
,
pageVo
);
}
return
Result
.
success
(
""
,
new
PageVo
());
}
}
}
}
src/main/java/com/mailu/ocrCloudPlatformAdmin/utils/CourtUtil.java
View file @
8f0a4424
...
@@ -30,5 +30,14 @@ public class CourtUtil {
...
@@ -30,5 +30,14 @@ public class CourtUtil {
return
false
;
return
false
;
}
}
public
static
boolean
existByIpScope
(
List
<
Court
>
courts
,
String
ipScope
)
{
for
(
Court
court
:
courts
)
{
if
(
court
.
getIpScope
().
contains
(
ipScope
)){
return
true
;
}
}
return
false
;
}
}
}
src/main/java/com/mailu/ocrCloudPlatformAdmin/vo/AppAbilityRecordVo.java
0 → 100644
View file @
8f0a4424
package
com
.
mailu
.
ocrCloudPlatformAdmin
.
vo
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
lombok.Data
;
import
java.util.Date
;
/**
* @author Hmb
* @since 2024/1/16 9:46
*/
@Data
public
class
AppAbilityRecordVo
{
private
String
id
;
/**
* 法院名称
*/
private
String
courtName
;
/**
* 业务厂家
*/
private
String
businessVendors
;
private
String
appAbilityName
;
private
String
ip
;
/**
* 文件页数
*/
private
Integer
fileCount
;
/**
* 调用次数
*/
private
String
callCount
;
/**
* 调用时间
*/
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
,
timezone
=
"GMT+8"
)
private
Date
callTime
;
/**
* 调用服务器ip
*/
private
String
serverIp
;
}
src/main/resources/application-prod.yml
View file @
8f0a4424
...
@@ -5,7 +5,7 @@ spring:
...
@@ -5,7 +5,7 @@ spring:
mysql1
:
# 数据源 1
mysql1
:
# 数据源 1
username
:
root
username
:
root
password
:
Docimax@123
password
:
Docimax@123
jdbc-url
:
jdbc:mysql://147.
1.5.77:3306
/yuntu_ofs?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai
jdbc-url
:
jdbc:mysql://147.
2.4.15:4417
/yuntu_ofs?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai
driver-class-name
:
com.mysql.cj.jdbc.Driver
driver-class-name
:
com.mysql.cj.jdbc.Driver
...
@@ -30,14 +30,14 @@ spring:
...
@@ -30,14 +30,14 @@ spring:
redis
:
redis
:
cluster
:
cluster
:
nodes
:
nodes
:
-
147.
1.5.79
:6379
-
147.
2.4.15
:6379
-
147.
1.5.79:6389
-
147.
2.4.15:6380
-
147.
1.5.80
:6379
-
147.
2.4.16
:6379
-
147.
1.5.80:6389
-
147.
2.4.16:6380
-
147.
1.5.81
:6379
-
147.
2.4.17
:6379
-
147.
1.5.81:6389
-
147.
2.4.17:6380
database
:
0
database
:
0
password
:
Docimax
password
:
Docimax
@123
jedis
:
jedis
:
pool
:
pool
:
max-active
:
128
max-active
:
128
...
@@ -46,6 +46,10 @@ spring:
...
@@ -46,6 +46,10 @@ spring:
min-idle
:
0
min-idle
:
0
timeout
:
5000
timeout
:
5000
eureka
:
client
:
service-url
:
defaultZone
:
http://147.1.5.77:9000/eureka
login-page
:
/user/login
login-page
:
/user/login
#showSql
#showSql
...
...
src/main/resources/application.yml
View file @
8f0a4424
...
@@ -4,9 +4,27 @@ spring:
...
@@ -4,9 +4,27 @@ spring:
jackson
:
jackson
:
time-zone
:
GMT+8
time-zone
:
GMT+8
date-format
:
yyyy-MM-dd HH:mm:ss
date-format
:
yyyy-MM-dd HH:mm:ss
application
:
name
:
ocrCloudPlatformAdmin
server
:
server
:
port
:
8090
port
:
8090
servlet
:
servlet
:
context-path
:
/ocrAdmin
context-path
:
/ocrAdmin
session
:
session
:
timeout
:
36000
timeout
:
36000
eureka
:
client
:
service-url
:
defaultZone
:
http://localhost:9000/eureka
instance
:
prefer-ip-address
:
true
instance-id
:
${spring.cloud.client.ip-address}:${spring.application.name}:${server.port}
lease-expiration-duration-in-seconds
:
6
lease-renewal-interval-in-seconds
:
2
feign
:
client
:
config
:
default
:
connectTimeout
:
60000
#单位毫秒
readTimeout
:
60000
#单位毫秒
src/main/resources/static/img/bg.png
0 → 100644
View file @
8f0a4424
This diff is collapsed.
Click to expand it.
src/main/resources/templates/appAbilityRecord/list.html
View file @
8f0a4424
...
@@ -51,6 +51,7 @@
...
@@ -51,6 +51,7 @@
</script>
</script>
<script>
<script>
var
list
,
table
,
form
,
condition
=
{};
var
list
,
table
,
form
,
condition
=
{};
let
courtList
=
[];
layui
.
use
([
"table"
,
"form"
],
function
()
{
layui
.
use
([
"table"
,
"form"
],
function
()
{
table
=
layui
.
table
;
table
=
layui
.
table
;
form
=
layui
.
form
;
form
=
layui
.
form
;
...
@@ -59,7 +60,7 @@
...
@@ -59,7 +60,7 @@
el
:
'#court'
,
el
:
'#court'
,
tips
:
"选择法院"
,
tips
:
"选择法院"
,
filterable
:
true
,
filterable
:
true
,
name
:
'court
Id
'
,
name
:
'court
Code
'
,
autoRow
:
true
,
autoRow
:
true
,
radio
:
true
,
radio
:
true
,
clickClose
:
true
,
clickClose
:
true
,
...
@@ -86,39 +87,22 @@
...
@@ -86,39 +87,22 @@
,
defaultToolbar
:
[
'filter'
,
'print'
,
{
title
:
"导出数据表格"
,
layEvent
:
"exports"
,
icon
:
"layui-icon-export"
}]
,
defaultToolbar
:
[
'filter'
,
'print'
,
{
title
:
"导出数据表格"
,
layEvent
:
"exports"
,
icon
:
"layui-icon-export"
}]
,
cols
:
[
,
cols
:
[
[
[
{
field
:
'id'
,
width
:
80
,
title
:
'编号'
,
align
:
"center"
}
{
field
:
'id'
,
width
:
80
,
title
:
'编号'
,
align
:
"center"
,
hide
:
true
}
,
{
field
:
'
taskId'
,
width
:
300
,
title
:
'任务ID
'
,
align
:
"center"
}
,
{
field
:
'
courtName'
,
width
:
260
,
title
:
'法院名称
'
,
align
:
"center"
}
,
{
field
:
'
applicationId'
,
width
:
80
,
title
:
'应用ID
'
,
align
:
"center"
}
,
{
field
:
'
businessVendors'
,
width
:
180
,
title
:
'业务厂商
'
,
align
:
"center"
}
,
{
field
:
'
userId'
,
width
:
80
,
title
:
'用户ID
'
,
align
:
"center"
}
,
{
field
:
'
callCount'
,
width
:
90
,
title
:
'调用次数
'
,
align
:
"center"
}
,
{
field
:
'a
bilityId'
,
width
:
80
,
title
:
'能力ID
'
,
align
:
"center"
}
,
{
field
:
'a
ppAbilityName'
,
width
:
180
,
title
:
'识别能力
'
,
align
:
"center"
}
,
{
field
:
'ip'
,
width
:
1
50
,
title
:
'IP地址
'
,
align
:
"center"
}
,
{
field
:
'ip'
,
width
:
1
60
,
title
:
'调用方IP
'
,
align
:
"center"
}
,
{
field
:
'callTime'
,
width
:
180
,
title
:
'调用时间'
,
align
:
"center"
}
,
{
field
:
'callTime'
,
width
:
180
,
title
:
'调用时间'
,
align
:
"center"
}
,
{
field
:
'ocrState'
,
width
:
80
,
title
:
'识别状态'
,
align
:
"center"
}
,
{
field
:
'fileCount'
,
width
:
90
,
title
:
'文件页数'
,
align
:
"center"
}
,
{
field
:
'fileId'
,
width
:
300
,
title
:
'文件唯一标识'
,
align
:
"center"
}
,
{
field
:
'serverIp'
,
width
:
160
,
title
:
'服务器IP'
,
align
:
"center"
}
// , {field: 'originName', width: 120, title: '待识别文件原始文件名', align: "center"}
// , {
// , {field: 'ocrFileName', width: 120, title: '待识别文件原始文件名', align: "center"}
// title: '操作', align: 'center'
// , {field: 'srcUrl', width: 120, title: '待识别文件url', align: "center"}
// , templet: function (data) {
// , {field: 'length', width: 80, title: '文件大小', align: "center"}
// var detailsBtn = '
<
a
class
=
"layui-btn layui-btn-primary layui-btn-xs"
lay
-
event
=
"info"
onclick
=
"moreInfo(' + data.id + ')"
>
详情
<
/a>'
;
// , {field: 'crc32', width: 120, title: '文件CRC32校验码', align: "center"}
// return detailsBtn;
// , {field: 'checksum', width: 120, title: '文件的CheckSum', align: "center"}
// }
// , {field: 'result', width: 80, title: '识别结果', align: "center"}
// }
// , {field: 'resultType', width: 80, title: '结果类型', align: "center"}
// , {field: 'dstUrl', width: 120, title: '识别结果保存路径', align: "center"}
// , {field: 'jsons', width: 120, title: '识别结果JSON文件url', align: "center"}
// , {field: 'pdf', width: 120, title: '合并后双层PDF文件url', align: "center"}
// , {field: 'isCallback', width: 120, title: '是否需要回调通知结果', align: "center"}
// , {field: 'callbackUrl', width: 80, title: '回调URL', align: "center"}
// , {field: 'callbackParams', width: 80, title: '回调参数', align: "center"}
// , {field: 'createdTime', width: 80, title: '创建时间', align: "center"}
// , {field: 'updatedTime', width: 80, title: '更新时间', align: "center"}
,
{
field
:
'serverIp'
,
width
:
150
,
title
:
'服务器IP'
,
align
:
"center"
}
,
{
title
:
'操作'
,
align
:
'center'
,
templet
:
function
(
data
)
{
var
detailsBtn
=
'<a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="info" onclick="moreInfo('
+
data
.
id
+
')">详情</a>'
;
return
detailsBtn
;
}
}
]
]
]
]
,
before
:
function
(
e
)
{
,
before
:
function
(
e
)
{
...
@@ -154,17 +138,25 @@
...
@@ -154,17 +138,25 @@
});
});
function
search
()
{
function
search
()
{
let
formData
=
form
.
val
(
"searchForm"
)
formData
.
ipScope
=
""
courtList
.
filter
(
item
=>
item
.
courtCode
===
parseInt
(
formData
.
courtCode
)).
forEach
(
item
=>
{
// 如果法院ipScope为空的,则默认赋值为'255.255.255.255' 并添加到formData中
formData
.
ipScope
=
item
.
ipScope
?
item
.
ipScope
:
"255.255.255.255"
})
list
.
reload
({
list
.
reload
({
where
:
form
.
val
(
"searchForm"
)
where
:
form
Data
,
page
:
{
curr
:
1
}
,
page
:
{
curr
:
1
}
})
})
}
}
function
initSearchForm
(
callback
)
{
function
initSearchForm
(
callback
)
{
$
.
get
(
"appAbilityRecordAll/getCourtByRole"
,
function
(
res
)
{
$
.
get
(
"appAbilityRecordAll/getCourtByRole"
,
function
(
res
)
{
if
(
res
.
code
!==
200
)
{
if
(
res
.
code
!==
200
)
{
layer
.
msg
(
res
.
msg
,
{
icon
:
2
});
layer
.
msg
(
res
.
msg
,
{
icon
:
2
});
}
else
{
}
else
{
courtList
=
res
.
data
;
callback
(
res
.
data
)
callback
(
res
.
data
)
}
}
});
});
...
...
src/main/resources/templates/home/console.html
View file @
8f0a4424
...
@@ -17,7 +17,7 @@
...
@@ -17,7 +17,7 @@
</head>
</head>
<body>
<body>
<
!--<a href="admin" style="position: fixed;right:100px;color: #2cedf5;">后台管理</a>--
>
<
a
href=
"admin"
style=
"position: fixed;right:100px;color: #2cedf5;"
>
后台管理
</a
>
<iframe
id=
"consolePage"
<iframe
id=
"consolePage"
src=
"http://192.168.1.230:9300/d/Ews-KJ84z/ge-yuan-ocrdiao-yong-qing-kuang?orgId=1&refresh=5s&kiosk"
src=
"http://192.168.1.230:9300/d/Ews-KJ84z/ge-yuan-ocrdiao-yong-qing-kuang?orgId=1&refresh=5s&kiosk"
style=
"width: 100%;height: 100%;border: unset;"
></iframe>
style=
"width: 100%;height: 100%;border: unset;"
></iframe>
...
...
src/main/resources/templates/home/welcome.html
View file @
8f0a4424
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
<head>
<head>
<base
th:href=
"${#request.getContextPath()}+'/'"
>
<base
th:href=
"${#request.getContextPath()}+'/'"
>
<meta
charset=
"UTF-8"
>
<meta
charset=
"UTF-8"
>
<title>
Title
</title>
<title>
统一管理电子卷宗图文识别云平台
</title>
<link
rel=
"stylesheet"
href=
"layuiadmin/layui/css/layui.css"
media=
"all"
>
<link
rel=
"stylesheet"
href=
"layuiadmin/layui/css/layui.css"
media=
"all"
>
...
@@ -15,15 +15,15 @@
...
@@ -15,15 +15,15 @@
overflow
:
hidden
;
overflow
:
hidden
;
}
}
.main
{
.main
{
width
:
1920px
;
width
:
auto
;
height
:
1080px
;
height
:
auto
;
background-image
:
url("img/b
ac
.png")
;
background-image
:
url("img/b
g
.png")
;
background-size
:
100%
100%
;
background-size
:
100%
100%
;
}
}
.main
.title
{
.main
.title
{
font-size
:
80
px
;
font-size
:
75
px
;
text-align
:
center
;
text-align
:
center
;
padding-top
:
25
0px
;
padding-top
:
33
0px
;
color
:
#ffffff
;
color
:
#ffffff
;
letter-spacing
:
10px
;
letter-spacing
:
10px
;
}
}
...
...
src/main/resources/templates/index.html
View file @
8f0a4424
...
@@ -33,7 +33,7 @@
...
@@ -33,7 +33,7 @@
</ul>
</ul>
<ul
class=
"layui-nav layui-layout-right"
lay-filter=
"layadmin-layout-right"
>
<ul
class=
"layui-nav layui-layout-right"
lay-filter=
"layadmin-layout-right"
>
<li
class=
"layui-nav-item layui-hide-xs"
lay-unselect
title=
"我的消息"
id=
"myMessage"
<li
class=
"layui-nav-item layui-hide-xs"
lay-unselect
title=
"我的消息"
id=
"myMessage"
lay-href=
"message/myMessage"
lay-text=
"我的信息
"
>
onclick=
"loadMyMessage();
"
>
<a
href=
"javascript:;"
>
<a
href=
"javascript:;"
>
<i
class=
"layui-icon layui-icon-notice"
></i>
<i
class=
"layui-icon layui-icon-notice"
></i>
<span
class=
"layui-badge"
style=
"margin: unset;top: 5px;display: none;"
id=
"unreadMessageCount"
>
0
</span>
<span
class=
"layui-badge"
style=
"margin: unset;top: 5px;display: none;"
id=
"unreadMessageCount"
>
0
</span>
...
@@ -69,11 +69,11 @@
...
@@ -69,11 +69,11 @@
<ul
class=
"layui-nav layui-nav-tree"
lay-shrink=
"all"
id=
"LAY-system-side-menu"
<ul
class=
"layui-nav layui-nav-tree"
lay-shrink=
"all"
id=
"LAY-system-side-menu"
lay-filter=
"layadmin-system-side-menu"
>
lay-filter=
"layadmin-system-side-menu"
>
<!--/*@thymesVar id="menu" type=""*/-->
<!--/*@thymesVar id="menu" type=""*/-->
<li
th:each=
"menu : ${menuList}"
data-name=
"home"
th:class=
"${menu.name == '
控制台
'? 'layui-nav-item layui-nav-itemed layui-this': 'layui-nav-item'}"
>
<li
th:each=
"menu : ${menuList}"
data-name=
"home"
th:class=
"${menu.name == '
角色管理
'? 'layui-nav-item layui-nav-itemed layui-this': 'layui-nav-item'}"
>
<a
href=
"javascript:;
"
th:lay-href=
"${menu.path}"
th:lay-tips=
"${menu.name}"
lay-direction=
"2"
>
<a
th:href=
"${menu.name == '控制台'?'console':'javascript:;'}
"
th:lay-href=
"${menu.path}"
th:lay-tips=
"${menu.name}"
lay-direction=
"2"
>
<i
th:if=
"menu.path eq '
home/console
'"
class=
"layui-icon layui-icon-home"
></i>
<i
th:if=
"menu.path eq '
role/
'"
class=
"layui-icon layui-icon-home"
></i>
<i
th:if=
"menu.path ne '
home/console
'"
class=
"layui-icon layui-icon-auz"
></i>
<i
th:if=
"menu.path ne '
role/
'"
class=
"layui-icon layui-icon-auz"
></i>
<cite
th:text=
"${menu.name}"
></cite>
<cite
th:text=
"${menu.name}"
>
客户端管理
</cite>
</a>
</a>
</li>
</li>
</ul>
</ul>
...
@@ -98,7 +98,7 @@
...
@@ -98,7 +98,7 @@
</div>
</div>
<div
class=
"layui-tab"
lay-unauto
lay-allowClose=
"true"
lay-filter=
"layadmin-layout-tabs"
>
<div
class=
"layui-tab"
lay-unauto
lay-allowClose=
"true"
lay-filter=
"layadmin-layout-tabs"
>
<ul
class=
"layui-tab-title"
id=
"LAY_app_tabsheader"
>
<ul
class=
"layui-tab-title"
id=
"LAY_app_tabsheader"
>
<li
lay-id=
"
home/console"
lay-attr=
"home/console
"
class=
"layui-this"
>
<li
lay-id=
"
role/"
lay-attr=
"role/
"
class=
"layui-this"
>
<i
class=
"layui-icon layui-icon-home"
></i>
<i
class=
"layui-icon layui-icon-home"
></i>
</li>
</li>
</ul>
</ul>
...
@@ -114,11 +114,8 @@
...
@@ -114,11 +114,8 @@
<iframe th:if="${user.id !=18937}" th:src="${menuList[0].path}" frameborder="0" class="layadmin-iframe">
<iframe th:if="${user.id !=18937}" th:src="${menuList[0].path}" frameborder="0" class="layadmin-iframe">
</iframe> -->
</iframe> -->
<iframe
th:if=
"${isAdmin}"
src=
"home/console"
frameborder=
"0"
class=
"layadmin-iframe"
></iframe>
<iframe
th:if=
"${isAdmin}"
src=
"role/"
frameborder=
"0"
class=
"layadmin-iframe"
></iframe>
<iframe
th:if=
"${!isAdmin}"
th:src=
"${menuList[1].path}"
frameborder=
"0"
class=
"layadmin-iframe"
></iframe>
<!-- <iframe th:if="${!isAdmin and menuList.size() == 1 and menuList[0].path != 'home/console'}" th:src="${menuList[0].path}" frameborder="0" class="layadmin-iframe"></iframe>-->
<!-- <iframe th:if="${!isAdmin and menuList.size() > 1 and menuList[0].path == 'home/console'}" th:src="${menuList[1].path}" frameborder="0" class="layadmin-iframe"></iframe>-->
</div>
</div>
</div>
</div>
...
@@ -130,6 +127,7 @@
...
@@ -130,6 +127,7 @@
<script
src=
"js/jquery.min.js"
></script>
<script
src=
"js/jquery.min.js"
></script>
<script
src=
"layui/layui.js"
></script>
<script
src=
"layui/layui.js"
></script>
<script
th:inline=
"javascript"
>
<script
th:inline=
"javascript"
>
let
messageInfoApiUrl
=
[[
$
{
messageInfoApiUrl
}]];
let
gatewayUrl
=
[[
$
{
gatewayUrl
}]];
let
gatewayUrl
=
[[
$
{
gatewayUrl
}]];
var
user
=
[[
$
{
user
}]];
var
user
=
[[
$
{
user
}]];
var
isAdmin
=
[[
$
{
isAdmin
}]];
var
isAdmin
=
[[
$
{
isAdmin
}]];
...
@@ -143,12 +141,14 @@
...
@@ -143,12 +141,14 @@
$
(
function
()
{
$
(
function
()
{
if
(
isAdmin
){
if
(
isAdmin
){
loadUnreadMessageCount
();
loadUnreadMessageCount
();
loadMyMessage
();
}
}
});
});
function
loadUnreadMessageCount
()
{
function
loadUnreadMessageCount
()
{
$
.
ajax
({
$
.
ajax
({
// url: messageInfoApiUrl + "/getUserMessages?username=" + user.youxiang + "&read=false",
url
:
gatewayUrl
+
"/getUserMessages?username="
+
user
.
youxiang
+
"&read=false"
,
url
:
gatewayUrl
+
"/getUserMessages?username="
+
user
.
youxiang
+
"&read=false"
,
success
:
function
(
res
)
{
success
:
function
(
res
)
{
let
unreadMessageCount
=
$
(
"#unreadMessageCount"
);
let
unreadMessageCount
=
$
(
"#unreadMessageCount"
);
...
@@ -162,6 +162,11 @@
...
@@ -162,6 +162,11 @@
});
});
}
}
function
loadMyMessage
()
{
$
(
"[lay-href='myMessage/']"
)[
0
].
click
();
}
/* function editPwd() {
/* function editPwd() {
layer.open({
layer.open({
type: 2
type: 2
...
...
src/main/resources/templates/indexOld.html
0 → 100644
View file @
8f0a4424
<!DOCTYPE html>
<html
xmlns:th=
"http://www.thymeleaf.org"
>
<head>
<base
th:href=
"${#request.getContextPath()}+'/'"
>
<meta
charset=
"utf-8"
>
<title>
OCR云平台后台管理系统
</title>
<meta
name=
"renderer"
content=
"webkit"
>
<meta
http-equiv=
"X-UA-Compatible"
content=
"IE=edge,chrome=1"
>
<meta
name=
"viewport"
content=
"width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0"
>
<!--<link rel="shortcut icon" href="favicon.ico" type="image/x-icon">-->
<link
rel=
"stylesheet"
href=
"layuiadmin/layui/css/layui.css"
media=
"all"
>
<link
rel=
"stylesheet"
href=
"layuiadmin/style/admin.css"
media=
"all"
>
</head>
<body
class=
"layui-layout-body"
>
<div
id=
"LAY_app"
>
<div
class=
"layui-layout layui-layout-admin"
>
<div
class=
"layui-header"
>
<!-- 头部区域 -->
<ul
class=
"layui-nav layui-layout-left"
>
<li
class=
"layui-nav-item layadmin-flexible"
lay-unselect
>
<a
href=
"javascript:;"
layadmin-event=
"flexible"
title=
"侧边伸缩"
>
<i
class=
"layui-icon layui-icon-shrink-right"
id=
"LAY_app_flexible"
></i>
</a>
</li>
<li
class=
"layui-nav-item"
lay-unselect
>
<a
href=
"javascript:;"
layadmin-event=
"refresh"
title=
"刷新"
>
<i
class=
"layui-icon layui-icon-refresh-3"
></i>
</a>
</li>
</ul>
<ul
class=
"layui-nav layui-layout-right"
lay-filter=
"layadmin-layout-right"
>
<li
class=
"layui-nav-item layui-hide-xs"
lay-unselect
title=
"我的消息"
id=
"myMessage"
lay-href=
"message/myMessage"
lay-text=
"我的信息"
>
<a
href=
"javascript:;"
>
<i
class=
"layui-icon layui-icon-notice"
></i>
<span
class=
"layui-badge"
style=
"margin: unset;top: 5px;display: none;"
id=
"unreadMessageCount"
>
0
</span>
</a>
</li>
<li
class=
"layui-nav-item layui-hide-xs"
lay-unselect
title=
"全屏"
>
<a
href=
"javascript:;"
layadmin-event=
"fullscreen"
>
<i
class=
"layui-icon layui-icon-screen-full"
></i>
</a>
</li>
<li
class=
"layui-nav-item"
lay-unselect
>
<a
href=
"javascript:;"
>
<cite
th:text=
"${user.xm}"
></cite>
</a>
<dl
class=
"layui-nav-child"
>
<dd><a
href=
"user/logout"
>
退出
</a></dd>
</dl>
</li>
<li
class=
"layui-nav-item layui-show-xs-inline-block layui-hide-sm"
lay-unselect
>
<a
href=
"javascript:;"
layadmin-event=
"more"
><i
class=
"layui-icon layui-icon-more-vertical"
></i></a>
</li>
</ul>
</div>
<!-- 侧边菜单 -->
<div
class=
"layui-side layui-side-menu"
>
<div
class=
"layui-side-scroll"
>
<div
lay-href=
"home/console"
class=
"layui-logo"
>
<span>
OCR云平台后台管理
</span>
</div>
<ul
class=
"layui-nav layui-nav-tree"
lay-shrink=
"all"
id=
"LAY-system-side-menu"
lay-filter=
"layadmin-system-side-menu"
>
<!--/*@thymesVar id="menu" type=""*/-->
<li
th:each=
"menu : ${menuList}"
data-name=
"home"
th:class=
"${menu.name == '控制台'? 'layui-nav-item layui-nav-itemed layui-this': 'layui-nav-item'}"
>
<a
href=
"javascript:;"
th:lay-href=
"${menu.path}"
th:lay-tips=
"${menu.name}"
lay-direction=
"2"
>
<i
th:if=
"menu.path eq 'home/console'"
class=
"layui-icon layui-icon-home"
></i>
<i
th:if=
"menu.path ne 'home/console'"
class=
"layui-icon layui-icon-auz"
></i>
<cite
th:text=
"${menu.name}"
></cite>
</a>
</li>
</ul>
</div>
</div>
<!-- 页面标签 -->
<div
class=
"layadmin-pagetabs"
id=
"LAY_app_tabs"
>
<div
class=
"layui-icon layadmin-tabs-control layui-icon-prev"
layadmin-event=
"leftPage"
></div>
<div
class=
"layui-icon layadmin-tabs-control layui-icon-next"
layadmin-event=
"rightPage"
></div>
<div
class=
"layui-icon layadmin-tabs-control layui-icon-down"
>
<ul
class=
"layui-nav layadmin-tabs-select"
lay-filter=
"layadmin-pagetabs-nav"
>
<li
class=
"layui-nav-item"
lay-unselect
>
<a
href=
"javascript:;"
></a>
<dl
class=
"layui-nav-child layui-anim-fadein"
>
<dd
layadmin-event=
"closeThisTabs"
><a
href=
"javascript:;"
>
关闭当前标签页
</a></dd>
<dd
layadmin-event=
"closeOtherTabs"
><a
href=
"javascript:;"
>
关闭其它标签页
</a></dd>
<dd
layadmin-event=
"closeAllTabs"
><a
href=
"javascript:;"
>
关闭全部标签页
</a></dd>
</dl>
</li>
</ul>
</div>
<div
class=
"layui-tab"
lay-unauto
lay-allowClose=
"true"
lay-filter=
"layadmin-layout-tabs"
>
<ul
class=
"layui-tab-title"
id=
"LAY_app_tabsheader"
>
<li
lay-id=
"home/console"
lay-attr=
"home/console"
class=
"layui-this"
>
<i
class=
"layui-icon layui-icon-home"
></i>
</li>
</ul>
</div>
</div>
<!-- 主体内容 -->
<div
class=
"layui-body"
id=
"LAY_app_body"
>
<div
class=
"layadmin-tabsbody-item layui-show"
>
<!--<iframe th:if="${user.id ==18937}" src="client/" frameborder="0" class="layadmin-iframe"></iframe>
<iframe th:if="${user.id !=18937}" th:src="${menuList[0].path}" frameborder="0" class="layadmin-iframe">
</iframe> -->
<iframe
th:if=
"${isAdmin}"
src=
"home/console"
frameborder=
"0"
class=
"layadmin-iframe"
></iframe>
<!-- <iframe th:if="${!isAdmin and menuList.size() == 1 and menuList[0].path != 'home/console'}" th:src="${menuList[0].path}" frameborder="0" class="layadmin-iframe"></iframe>-->
<!-- <iframe th:if="${!isAdmin and menuList.size() > 1 and menuList[0].path == 'home/console'}" th:src="${menuList[1].path}" frameborder="0" class="layadmin-iframe"></iframe>-->
</div>
</div>
<!-- 辅助元素,一般用于移动设备下遮罩 -->
<div
class=
"layadmin-body-shade"
layadmin-event=
"shade"
></div>
</div>
</div>
<script
src=
"js/jquery.min.js"
></script>
<script
src=
"layui/layui.js"
></script>
<script
th:inline=
"javascript"
>
let
gatewayUrl
=
[[
$
{
gatewayUrl
}]];
var
user
=
[[
$
{
user
}]];
var
isAdmin
=
[[
$
{
isAdmin
}]];
</script>
<script>
layui
.
config
({
base
:
'layuiadmin/'
//静态资源所在路径
}).
extend
({
index
:
'lib/index'
//主入口模块
}).
use
(
'index'
);
$
(
function
()
{
if
(
isAdmin
){
loadUnreadMessageCount
();
}
});
function
loadUnreadMessageCount
()
{
$
.
ajax
({
url
:
gatewayUrl
+
"/getUserMessages?username="
+
user
.
youxiang
+
"&read=false"
,
success
:
function
(
res
)
{
let
unreadMessageCount
=
$
(
"#unreadMessageCount"
);
if
(
res
.
code
===
200
&&
res
.
data
.
length
>
0
)
{
unreadMessageCount
.
css
(
"display"
,
"unset"
);
unreadMessageCount
.
text
(
res
.
data
.
length
);
}
else
if
(
res
.
code
===
200
&&
res
.
data
.
length
===
0
)
{
unreadMessageCount
.
css
(
"display"
,
"none"
);
}
}
});
}
/* function editPwd() {
layer.open({
type: 2
, title: ['修改密码', 'font-size:18px;text-align:center;background-color:#3b749e;']
, shade: [0.5, '#393D49']
, skin: 'layui-layer-molv'
, content: 'password'
, area: ['500px', '550px']
, resize: false
, btn: ['保存', '取消']
, yes: function (index, layero) {
var iframeWin = window[layero.find('iframe')[0]['name']];
iframeWin.$("#btn").click();
var data =iframeWin.data;
if (data!=null){
data.username = "[[${username}]]";
data.oldPassword = $.md5(data.oldPassword);
data.newPwd = $.md5(data.newPwd);
$.post('user/password', data, function (res) {
if (res.code === 200) {
layer.msg(res.msg,{icon:1});
window.setTimeout(function() {
window.location.href = "logout";
},2000)
} else {
layer.msg(res.msg, {icon:2})
}
});
}
}
, btn2: function (index, layero) {
layer.close(index)
}
});
}*/
</script>
</body>
</html>
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment