Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
P
plant
Project
Project
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
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
qinhu
plant
Commits
2d126f63
Commit
2d126f63
authored
Oct 16, 2020
by
shulidong
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
适配用户权限
parent
9fdc74a3
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
330 additions
and
61 deletions
+330
-61
.gitignore
.gitignore
+1
-0
power-bussiness.iml
power-bussiness/power-bussiness.iml
+145
-57
Constance.java
...se/sc/energy/power/plant/business/constant/Constance.java
+6
-0
BtreeInspectionController.java
.../plant/business/controller/BtreeInspectionController.java
+7
-1
RoleController.java
...nergy/power/plant/business/controller/RoleController.java
+64
-0
Role.java
...a/cn/wise/sc/energy/power/plant/business/domain/Role.java
+37
-0
UserInfo.java
.../wise/sc/energy/power/plant/business/domain/UserInfo.java
+4
-0
RoleRepository.java
...nergy/power/plant/business/repository/RoleRepository.java
+20
-0
JWTAuthenticationFilter.java
...ower/plant/business/security/JWTAuthenticationFilter.java
+1
-2
JwtUserDetailsService.java
.../power/plant/business/security/JwtUserDetailsService.java
+9
-1
C2TreeAnalysisTask.java
.../energy/power/plant/business/task/C2TreeAnalysisTask.java
+33
-0
application.yml
power-bussiness/src/main/resources/application.yml
+3
-0
No files found.
.gitignore
View file @
2d126f63
...
...
@@ -35,6 +35,7 @@ target/
*.zip
*.tar
*.tar.gz
*.class
### logs ####
/logs/
...
...
power-bussiness/power-bussiness.iml
View file @
2d126f63
This diff is collapsed.
Click to expand it.
power-bussiness/src/main/java/cn/wise/sc/energy/power/plant/business/constant/Constance.java
View file @
2d126f63
package
cn
.
wise
.
sc
.
energy
.
power
.
plant
.
business
.
constant
;
import
java.util.concurrent.ConcurrentHashMap
;
/**
* @author neo.shu
* @since 2020/10/6 09:43
...
...
@@ -17,4 +19,8 @@ public class Constance {
public
static
final
String
RETURN
=
"\n"
;
public
static
final
String
SPLIT
=
":"
;
//二叉树线程参数map
public
static
ConcurrentHashMap
<
String
,
String
>
TASKPARAMMAP
=
new
ConcurrentHashMap
<>();
}
power-bussiness/src/main/java/cn/wise/sc/energy/power/plant/business/controller/BtreeInspectionController.java
View file @
2d126f63
...
...
@@ -10,6 +10,7 @@ import cn.wise.sc.energy.power.plant.business.jna.C2TreeAnalysis;
import
cn.wise.sc.energy.power.plant.business.opentsdb.OpentsdbOkHttpClient
;
import
cn.wise.sc.energy.power.plant.business.repository.AutoInspectionRepository
;
import
cn.wise.sc.energy.power.plant.business.repository.BtreeInfoConfigRepository
;
import
cn.wise.sc.energy.power.plant.business.task.C2TreeAnalysisTask
;
import
cn.wise.sc.energy.power.plant.business.utils.BeanUtilsExt
;
import
cn.wise.sc.energy.power.plant.business.utils.Utils
;
import
cn.wise.sc.energy.power.plant.business.utils.poi.DocxService
;
...
...
@@ -58,6 +59,9 @@ public class BtreeInspectionController {
@Autowired
AutoInspectionRepository
autoInspectionRepository
;
@Autowired
C2TreeAnalysisTask
c2TreeAnalysisTask
;
@ApiOperation
(
"获取二叉树列表"
)
@PostMapping
(
"/configList"
)
public
BaseResponse
<
List
<
BtreeInfoConfig
>>
interaction
()
{
...
...
@@ -209,8 +213,10 @@ public class BtreeInspectionController {
//每次新建任务都保存一下
redissonClient
.
getBucket
(
"btreetask:"
+
Utils
.
getTaskPrefix
()).
set
(
taskId
);
//jna发起任务。
//String taskjson = "{\"taskId\":\"" + "dfdf" + "\",\"taskTyped\":0,\"Data\":[" + "1602747401000" + "," + "1602747401000" + "]}";
String
taskjson
=
"{\"taskId\":\""
+
taskId
+
"\",\"taskTyped\":0,\"Data\":["
+
lastTime1
+
","
+
lastTime2
+
"]}"
;
log
.
error
(
taskjson
);
//log.error(taskjson);
//Constance.TASKPARAMMAP.put(Utils.getTaskPrefix(), taskjson);
try
{
new
Thread
(()
->
{
C2TreeAnalysis
.
INSTANCE
.
C2TreeDiagnose
(
taskjson
);
...
...
power-bussiness/src/main/java/cn/wise/sc/energy/power/plant/business/controller/RoleController.java
0 → 100644
View file @
2d126f63
package
cn
.
wise
.
sc
.
energy
.
power
.
plant
.
business
.
controller
;
import
cn.hutool.core.collection.CollectionUtil
;
import
cn.wise.sc.energy.power.plant.business.domain.Role
;
import
cn.wise.sc.energy.power.plant.business.repository.RoleRepository
;
import
cn.wise.sc.energy.power.plant.business.utils.BeanUtilsExt
;
import
cn.wise.sc.energy.power.plant.common.core.bean.BaseResponse
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.transaction.annotation.Propagation
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.web.bind.annotation.CrossOrigin
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
java.util.List
;
/**
* @author neo.shu
* @since 2020/10/16 17:53
*/
@CrossOrigin
@RestController
@RequestMapping
(
"role/"
)
@Slf4j
public
class
RoleController
{
@Autowired
RoleRepository
roleRepository
;
@ApiOperation
(
"获取角色列表"
)
@PostMapping
(
"/list"
)
public
BaseResponse
<
List
<
Role
>>
interaction
()
{
//不能新增超级管理员
List
<
Role
>
list
=
roleRepository
.
findAllByRoleIdNotIn
(
CollectionUtil
.
newArrayList
(
1
));
return
BaseResponse
.
okData
(
list
);
}
@ApiOperation
(
"创建或更新角色"
)
@PostMapping
(
"/newOrUpdate"
)
@Transactional
(
propagation
=
Propagation
.
REQUIRED
)
public
BaseResponse
<
Boolean
>
add
(
@RequestBody
Role
info
)
{
Role
role
;
if
(
info
.
getRoleId
()
==
null
)
{
info
.
setRoleId
(
null
);
role
=
roleRepository
.
save
(
info
);
}
else
{
role
=
roleRepository
.
getOne
(
info
.
getRoleId
());
BeanUtils
.
copyProperties
(
info
,
role
,
BeanUtilsExt
.
getNullPropertyNames
(
info
));
role
=
roleRepository
.
save
(
role
);
}
if
(
role
.
getId
()
!=
null
)
{
return
BaseResponse
.
okData
(
true
);
}
else
{
return
BaseResponse
.
okData
(
false
);
}
}
}
power-bussiness/src/main/java/cn/wise/sc/energy/power/plant/business/domain/Role.java
0 → 100644
View file @
2d126f63
package
cn
.
wise
.
sc
.
energy
.
power
.
plant
.
business
.
domain
;
import
lombok.Data
;
import
org.springframework.context.annotation.Lazy
;
import
javax.persistence.Entity
;
import
javax.persistence.GeneratedValue
;
import
javax.persistence.GenerationType
;
import
javax.persistence.Id
;
import
javax.persistence.Table
;
import
java.io.Serializable
;
/**
* @description:
* @author: neo.shu
* @create: 2020-10-16 10:00
**/
@Data
@Entity
@Table
(
name
=
"role"
)
@Lazy
(
false
)
public
class
Role
extends
AbstractEntity
<
Integer
>
implements
Serializable
{
@Id
@GeneratedValue
(
strategy
=
GenerationType
.
IDENTITY
)
private
Integer
roleId
;
private
String
permission
;
private
String
name
;
@Override
public
Integer
getId
()
{
return
null
;
}
}
power-bussiness/src/main/java/cn/wise/sc/energy/power/plant/business/domain/UserInfo.java
View file @
2d126f63
...
...
@@ -40,6 +40,10 @@ public class UserInfo extends AbstractEntity<String> implements UserDetails {
private
String
phone
;
private
String
name
;
private
String
sex
;
@Transient
private
String
permission
;
@Transient
private
String
rolename
;
@Transient
private
Collection
<?
extends
GrantedAuthority
>
authorities
;
...
...
power-bussiness/src/main/java/cn/wise/sc/energy/power/plant/business/repository/RoleRepository.java
0 → 100644
View file @
2d126f63
package
cn
.
wise
.
sc
.
energy
.
power
.
plant
.
business
.
repository
;
import
cn.wise.sc.energy.power.plant.business.domain.Role
;
import
org.springframework.data.jpa.repository.JpaRepository
;
import
org.springframework.data.jpa.repository.JpaSpecificationExecutor
;
import
org.springframework.stereotype.Repository
;
import
java.util.List
;
/**
* @description: 阈值更新记录仓储
* @author: neo.shu
* @create: 2020-10-16 14:41
**/
@Repository
public
interface
RoleRepository
extends
JpaRepository
<
Role
,
Integer
>,
JpaSpecificationExecutor
<
Role
>
{
List
<
Role
>
findAllByRoleIdNotIn
(
List
<
Integer
>
list
);
}
\ No newline at end of file
power-bussiness/src/main/java/cn/wise/sc/energy/power/plant/business/security/JWTAuthenticationFilter.java
View file @
2d126f63
...
...
@@ -88,8 +88,7 @@ public class JWTAuthenticationFilter extends
cacheToken
.
set
(
token
,
24
,
TimeUnit
.
HOURS
);
response
.
addHeader
(
AUTHORIZATION_HEADER
,
TOKEN_PREFIX
+
token
);
try
{
String
role
=
((
UserInfo
)
authResult
.
getPrincipal
()).
getRole
()
+
""
;
String
rts
=
JSON
.
toJSONString
(
BaseResponse
.
okData
(
role
));
String
rts
=
JSON
.
toJSONString
(
BaseResponse
.
okData
(((
UserInfo
)
authResult
.
getPrincipal
())));
response
.
setHeader
(
"Content-type"
,
"text/html;charset=UTF-8"
);
response
.
setCharacterEncoding
(
"utf-8"
);
response
.
getWriter
().
write
(
rts
);
...
...
power-bussiness/src/main/java/cn/wise/sc/energy/power/plant/business/security/JwtUserDetailsService.java
View file @
2d126f63
package
cn
.
wise
.
sc
.
energy
.
power
.
plant
.
business
.
security
;
import
cn.wise.sc.energy.power.plant.business.domain.Role
;
import
cn.wise.sc.energy.power.plant.business.domain.UserInfo
;
import
cn.wise.sc.energy.power.plant.business.repository.RoleRepository
;
import
cn.wise.sc.energy.power.plant.business.service.IUserInfoService
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.
Value
;
import
org.springframework.beans.factory.annotation.
Autowired
;
import
org.springframework.security.core.userdetails.UserDetails
;
import
org.springframework.security.core.userdetails.UserDetailsService
;
import
org.springframework.security.core.userdetails.UsernameNotFoundException
;
...
...
@@ -21,6 +23,8 @@ public class JwtUserDetailsService implements UserDetailsService {
final
IUserInfoService
iUserInfoService
;
@Autowired
RoleRepository
roleRepository
;
public
JwtUserDetailsService
(
IUserInfoService
iUserInfoService
)
{
this
.
iUserInfoService
=
iUserInfoService
;
...
...
@@ -51,7 +55,11 @@ public class JwtUserDetailsService implements UserDetailsService {
if
(!
userInfo
.
getPlantid
().
equals
(
split
[
1
]))
{
throw
new
UsernameNotFoundException
(
"user is not belong to this plant!"
);
}
//获取角色信息
Role
role
=
roleRepository
.
getOne
(
userInfo
.
getRole
());
((
UserInfo
)
userDetails
).
setUsername
(
username
);
((
UserInfo
)
userDetails
).
setRolename
(
role
.
getName
());
((
UserInfo
)
userDetails
).
setPermission
(
role
.
getPermission
());
return
userDetails
;
}
}
power-bussiness/src/main/java/cn/wise/sc/energy/power/plant/business/task/C2TreeAnalysisTask.java
0 → 100644
View file @
2d126f63
package
cn
.
wise
.
sc
.
energy
.
power
.
plant
.
business
.
task
;
import
cn.wise.sc.energy.power.plant.business.constant.Constance
;
import
cn.wise.sc.energy.power.plant.business.jna.C2TreeAnalysis
;
import
cn.wise.sc.energy.power.plant.business.task.schedule.ScheduleTask
;
import
cn.wise.sc.energy.power.plant.business.utils.Utils
;
import
org.springframework.stereotype.Service
;
import
java.util.UUID
;
/**
* @author neo.shu
* @since 2020/10/15 18:05
*/
@Service
public
class
C2TreeAnalysisTask
extends
ScheduleTask
{
public
C2TreeAnalysisTask
()
{
super
(
UUID
.
randomUUID
().
toString
());
}
@Override
public
void
run
()
{
try
{
C2TreeAnalysis
.
INSTANCE
.
C2TreeDiagnose
(
Constance
.
TASKPARAMMAP
.
get
(
Utils
.
getTaskPrefix
()));
Thread
.
sleep
(
10000
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
}
}
power-bussiness/src/main/resources/application.yml
View file @
2d126f63
...
...
@@ -100,6 +100,9 @@ spring:
hibernate
:
naming
:
physical-strategy
:
org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
properties
:
hibernate
:
enable_lazy_load_no_trans
:
true
opentsdb
:
baseUrl
:
http://39.105.86.33:8182
server
:
...
...
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