Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
C
cloud-fb
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
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
王衍超
cloud-fb
Commits
c3bcf9c7
Commit
c3bcf9c7
authored
Jun 22, 2021
by
wukaiqiang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
新增消息接受接口 /message/remindByPermissions
parent
11e55d43
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
122 additions
and
16 deletions
+122
-16
DinasOrganizationServiceImpl.java
...as/biz/internal/service/DinasOrganizationServiceImpl.java
+5
-0
DinasOrganizationService.java
.../com/xyst/dinas/biz/service/DinasOrganizationService.java
+1
-1
DinasCommonController.java
...in/java/com/xyst/dinas/biz/web/DinasCommonController.java
+116
-15
No files found.
backend/xyst.dinas.biz/src/main/java/com/xyst/dinas/biz/internal/service/DinasOrganizationServiceImpl.java
View file @
c3bcf9c7
...
@@ -81,6 +81,11 @@ public class DinasOrganizationServiceImpl implements DinasOrganizationService {
...
@@ -81,6 +81,11 @@ public class DinasOrganizationServiceImpl implements DinasOrganizationService {
List
<
UUID
>
staffList
=
dinasOrganizationDao
.
queryStaffByRegionalCompany
(
id
);
List
<
UUID
>
staffList
=
dinasOrganizationDao
.
queryStaffByRegionalCompany
(
id
);
return
ResponseObj
.
success
(
"查询成功"
,
staffList
);
return
ResponseObj
.
success
(
"查询成功"
,
staffList
);
}
}
@Override
public
List
<
UUID
>
queryStaffByRegionalCompanyForMessage
(
UUID
id
)
{
List
<
UUID
>
staffList
=
dinasOrganizationDao
.
queryStaffByRegionalCompany
(
id
);
return
staffList
;
}
public
KObject
getCurrentRegionalCompany
()
{
public
KObject
getCurrentRegionalCompany
()
{
return
load
(
getCurrentRegionalCompanyId
());
return
load
(
getCurrentRegionalCompanyId
());
...
...
backend/xyst.dinas.biz/src/main/java/com/xyst/dinas/biz/service/DinasOrganizationService.java
View file @
c3bcf9c7
...
@@ -21,7 +21,7 @@ public interface DinasOrganizationService {
...
@@ -21,7 +21,7 @@ public interface DinasOrganizationService {
List
<
UUID
>
queryStaffByPostId
(
String
postId
);
List
<
UUID
>
queryStaffByPostId
(
String
postId
);
Object
queryStaffByRegionalCompany
(
UUID
fromString
);
Object
queryStaffByRegionalCompany
(
UUID
fromString
);
List
<
UUID
>
queryStaffByRegionalCompanyForMessage
(
UUID
fromString
);
boolean
repeatName
(
String
name
);
boolean
repeatName
(
String
name
);
boolean
repeatCode
(
String
code
);
boolean
repeatCode
(
String
code
);
...
...
backend/xyst.dinas.biz/src/main/java/com/xyst/dinas/biz/web/DinasCommonController.java
View file @
c3bcf9c7
...
@@ -7,6 +7,7 @@ import java.util.List;
...
@@ -7,6 +7,7 @@ import java.util.List;
import
java.util.Map
;
import
java.util.Map
;
import
java.util.UUID
;
import
java.util.UUID
;
import
org.json.JSONArray
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.format.annotation.DateTimeFormat
;
import
org.springframework.format.annotation.DateTimeFormat
;
...
@@ -18,15 +19,28 @@ import org.springframework.web.bind.annotation.RequestMethod;
...
@@ -18,15 +19,28 @@ import org.springframework.web.bind.annotation.RequestMethod;
import
org.springframework.web.bind.annotation.ResponseBody
;
import
org.springframework.web.bind.annotation.ResponseBody
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.bind.annotation.RestController
;
import
com.beecode.amino.core.Amino
;
import
com.beecode.bap.department.service.DepartmentService
;
import
com.beecode.bap.department.service.DepartmentService
;
import
com.beecode.bap.staff.Staff
;
import
com.beecode.bap.staff.Staff
;
import
com.beecode.bap.staff.service.StaffService
;
import
com.beecode.bap.staff.service.StaffService
;
import
com.beecode.bap.staff.util.StaffUtil
;
import
com.beecode.bap.staff.util.StaffUtil
;
import
com.beecode.bcp.authz.Identity
;
import
com.beecode.bcp.authz.Privilege
;
import
com.beecode.bcp.authz.service.IdentityService
;
import
com.beecode.bcp.authz.service.PrivilegeService
;
import
com.beecode.bcp.type.KObject
;
import
com.beecode.bcp.type.KObject
;
import
com.beecode.bcp.type.json.JSONObjectUtils
;
import
com.beecode.bcp.type.json.JSONObjectUtils
;
import
com.beecode.inz.basis.team.pojo.ResponseObj
;
import
com.beecode.inz.basis.team.pojo.ResponseObj
;
import
com.beecode.inz.message.CommonConstants
;
import
com.beecode.inz.message.RemPartRelationConstants
;
import
com.beecode.inz.message.RemindConstants
;
import
com.beecode.inz.message.enumeration.ParterType
;
import
com.beecode.inz.message.service.RemindService
;
import
com.beecode.inz.message.util.MessageUtils
;
import
com.beecode.nlib.utils.StringUtils
;
import
com.beecode.nlib.utils.StringUtils
;
import
com.jiuqi.np.util.DateUtil
;
import
com.xyst.dinas.biz.enumeration.PlanningCycleEnum
;
import
com.xyst.dinas.biz.enumeration.PlanningCycleEnum
;
import
com.xyst.dinas.biz.service.DinasOrganizationService
;
import
com.xyst.dinas.biz.service.PlanningCycleService
;
import
com.xyst.dinas.biz.service.PlanningCycleService
;
@RestController
@RestController
...
@@ -34,13 +48,19 @@ public class DinasCommonController {
...
@@ -34,13 +48,19 @@ public class DinasCommonController {
@Autowired
@Autowired
public
DepartmentService
departmentService
;
public
DepartmentService
departmentService
;
@Autowired
private
RemindService
remService
;
@Autowired
@Autowired
public
StaffService
staffService
;
public
StaffService
staffService
;
@Autowired
@Autowired
DinasOrganizationService
dinasOrganizationService
;
@Autowired
public
PlanningCycleService
planningCycleService
;
public
PlanningCycleService
planningCycleService
;
@Autowired
IdentityService
identityService
;
@Autowired
PrivilegeService
privilegeService
;
/**
/**
* @Description: 根据部门id查询全公司及其该部门的子部门(包括该部门自身)
* @Description: 根据部门id查询全公司及其该部门的子部门(包括该部门自身)
* @param id
* @param id
...
@@ -52,20 +72,20 @@ public class DinasCommonController {
...
@@ -52,20 +72,20 @@ public class DinasCommonController {
public
List
<
Map
<
String
,
Object
>>
queryDepartmentById
(
@RequestBody
String
body
)
{
public
List
<
Map
<
String
,
Object
>>
queryDepartmentById
(
@RequestBody
String
body
)
{
JSONObject
param
=
new
JSONObject
(
body
);
JSONObject
param
=
new
JSONObject
(
body
);
List
<
KObject
>
list
=
new
ArrayList
<
KObject
>();
List
<
KObject
>
list
=
new
ArrayList
<
KObject
>();
if
(
param
.
isNull
(
"id"
))
{
if
(
param
.
isNull
(
"id"
))
{
KObject
rootLevel
=
departmentService
.
getByCode
(
"quangongsi"
);
KObject
rootLevel
=
departmentService
.
getByCode
(
"quangongsi"
);
list
.
add
(
rootLevel
);
list
.
add
(
rootLevel
);
}
else
{
}
else
{
String
departmentId
=
param
.
getString
(
"id"
);
String
departmentId
=
param
.
getString
(
"id"
);
Boolean
enable
=
param
.
getBoolean
(
"enable"
);
Boolean
enable
=
param
.
getBoolean
(
"enable"
);
String
type
=
param
.
optString
(
"type"
,
"REGIONAL_COMPANY"
);
String
type
=
param
.
optString
(
"type"
,
"REGIONAL_COMPANY"
);
if
(
type
.
equals
(
"REGIONAL_COMPANY"
))
{
if
(
type
.
equals
(
"REGIONAL_COMPANY"
))
{
KObject
rootLevel
=
departmentService
.
getByCode
(
"quangongsi"
);
KObject
rootLevel
=
departmentService
.
getByCode
(
"quangongsi"
);
KObject
regionalLevel
=
departmentService
.
getById
(
UUID
.
fromString
(
departmentId
));
KObject
regionalLevel
=
departmentService
.
getById
(
UUID
.
fromString
(
departmentId
));
list
.
addAll
(
departmentService
.
getChildren
(
UUID
.
fromString
(
departmentId
),
enable
));
list
.
addAll
(
departmentService
.
getChildren
(
UUID
.
fromString
(
departmentId
),
enable
));
list
.
add
(
rootLevel
);
list
.
add
(
rootLevel
);
list
.
add
(
regionalLevel
);
list
.
add
(
regionalLevel
);
}
else
if
(
type
.
equals
(
"GROUP_COMPANY"
))
{
}
else
if
(
type
.
equals
(
"GROUP_COMPANY"
))
{
list
.
addAll
(
departmentService
.
getAllEnable
());
list
.
addAll
(
departmentService
.
getAllEnable
());
}
}
}
}
...
@@ -98,14 +118,14 @@ public class DinasCommonController {
...
@@ -98,14 +118,14 @@ public class DinasCommonController {
public
List
<
Map
<
String
,
Object
>>
queryStaffByDepartmentId
(
@RequestBody
String
body
)
{
public
List
<
Map
<
String
,
Object
>>
queryStaffByDepartmentId
(
@RequestBody
String
body
)
{
JSONObject
param
=
new
JSONObject
(
body
);
JSONObject
param
=
new
JSONObject
(
body
);
List
<
Map
<
String
,
Object
>>
temp
=
new
ArrayList
<
Map
<
String
,
Object
>>();
List
<
Map
<
String
,
Object
>>
temp
=
new
ArrayList
<
Map
<
String
,
Object
>>();
if
(
param
.
isNull
(
"id"
))
{
if
(
param
.
isNull
(
"id"
))
{
return
null
;
return
null
;
}
}
String
departmentId
=
param
.
getString
(
"id"
);
String
departmentId
=
param
.
getString
(
"id"
);
Boolean
enable
=
param
.
getBoolean
(
"enable"
);
Boolean
enable
=
param
.
getBoolean
(
"enable"
);
List
<
KObject
>
list
=
staffService
.
getAllByDept
(
UUID
.
fromString
(
departmentId
));
List
<
KObject
>
list
=
staffService
.
getAllByDept
(
UUID
.
fromString
(
departmentId
));
for
(
int
i
=
0
;
i
<
list
.
size
();
i
++)
{
for
(
int
i
=
0
;
i
<
list
.
size
();
i
++)
{
if
(
list
.
get
(
i
).
get
(
"user"
).
getBoolean
(
"enabled"
)
!=
enable
)
{
if
(
list
.
get
(
i
).
get
(
"user"
).
getBoolean
(
"enabled"
)
!=
enable
)
{
list
.
remove
(
i
);
list
.
remove
(
i
);
}
}
}
}
...
@@ -147,22 +167,23 @@ public class DinasCommonController {
...
@@ -147,22 +167,23 @@ public class DinasCommonController {
return
ResponseObj
.
success
();
return
ResponseObj
.
success
();
}
}
/**
/**
* 获取指定日期和计划周期类型的计划周期实体
* 获取指定日期和计划周期类型的计划周期实体
*
* @param planningCycleType 计划周期
* @param planningCycleType 计划周期
* @param date
* @param date
* @return
* @return
*/
*/
@GetMapping
(
"/sand/user/planningCycleObj/{planningCycle}/{date}"
)
@GetMapping
(
"/sand/user/planningCycleObj/{planningCycle}/{date}"
)
public
KObject
getPlanningCycleObjBySand
(
@PathVariable
String
planningCycle
,
@PathVariable
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd"
)
Date
date
)
{
public
KObject
getPlanningCycleObjBySand
(
@PathVariable
String
planningCycle
,
@PathVariable
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd"
)
Date
date
)
{
PlanningCycleEnum
planningCycleType
=
null
;
PlanningCycleEnum
planningCycleType
=
null
;
if
(
PlanningCycleEnum
.
DAY
.
name
().
equalsIgnoreCase
(
planningCycle
))
{
if
(
PlanningCycleEnum
.
DAY
.
name
().
equalsIgnoreCase
(
planningCycle
))
{
planningCycleType
=
PlanningCycleEnum
.
DAY
;
planningCycleType
=
PlanningCycleEnum
.
DAY
;
}
else
if
(
PlanningCycleEnum
.
WEEK
.
name
().
equalsIgnoreCase
(
planningCycle
))
{
}
else
if
(
PlanningCycleEnum
.
WEEK
.
name
().
equalsIgnoreCase
(
planningCycle
))
{
planningCycleType
=
PlanningCycleEnum
.
WEEK
;
planningCycleType
=
PlanningCycleEnum
.
WEEK
;
}
else
{
}
else
{
return
null
;
return
null
;
}
}
return
planningCycleService
.
getPlanningCycleObj
(
planningCycleType
,
date
);
return
planningCycleService
.
getPlanningCycleObj
(
planningCycleType
,
date
);
...
@@ -170,19 +191,21 @@ public class DinasCommonController {
...
@@ -170,19 +191,21 @@ public class DinasCommonController {
/**
/**
* 获取指定日期和计划周期类型的计划周期实体
* 获取指定日期和计划周期类型的计划周期实体
*
* @param planningCycleType 计划周期
* @param planningCycleType 计划周期
* @param date
* @param date
* @return
* @return
*/
*/
@GetMapping
(
"/planningCycleObj/{planningCycle}/{date}"
)
@GetMapping
(
"/planningCycleObj/{planningCycle}/{date}"
)
public
KObject
getPlanningCycleObj
(
@PathVariable
String
planningCycle
,
@PathVariable
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd"
)
Date
date
)
{
public
KObject
getPlanningCycleObj
(
@PathVariable
String
planningCycle
,
@PathVariable
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd"
)
Date
date
)
{
PlanningCycleEnum
planningCycleType
=
null
;
PlanningCycleEnum
planningCycleType
=
null
;
if
(
PlanningCycleEnum
.
DAY
.
name
().
equalsIgnoreCase
(
planningCycle
))
{
if
(
PlanningCycleEnum
.
DAY
.
name
().
equalsIgnoreCase
(
planningCycle
))
{
planningCycleType
=
PlanningCycleEnum
.
DAY
;
planningCycleType
=
PlanningCycleEnum
.
DAY
;
}
else
if
(
PlanningCycleEnum
.
WEEK
.
name
().
equalsIgnoreCase
(
planningCycle
))
{
}
else
if
(
PlanningCycleEnum
.
WEEK
.
name
().
equalsIgnoreCase
(
planningCycle
))
{
planningCycleType
=
PlanningCycleEnum
.
WEEK
;
planningCycleType
=
PlanningCycleEnum
.
WEEK
;
}
else
{
}
else
{
return
null
;
return
null
;
}
}
return
planningCycleService
.
getPlanningCycleObj
(
planningCycleType
,
date
);
return
planningCycleService
.
getPlanningCycleObj
(
planningCycleType
,
date
);
...
@@ -190,6 +213,7 @@ public class DinasCommonController {
...
@@ -190,6 +213,7 @@ public class DinasCommonController {
/**
/**
* 获取指定时间范围内类型为天的计划周期
* 获取指定时间范围内类型为天的计划周期
*
* @param planningCycleType
* @param planningCycleType
* @param startTime
* @param startTime
* @param endTime
* @param endTime
...
@@ -200,4 +224,81 @@ public class DinasCommonController {
...
@@ -200,4 +224,81 @@ public class DinasCommonController {
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd"
)
@PathVariable
Date
endTime
)
{
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd"
)
@PathVariable
Date
endTime
)
{
return
planningCycleService
.
getPlanningCycleListByDay
(
startTime
,
endTime
);
return
planningCycleService
.
getPlanningCycleListByDay
(
startTime
,
endTime
);
}
}
/**
* 创建一条提醒 通过自查当前权限
*
* @throws Exception
*/
@ResponseBody
@RequestMapping
(
value
=
"/message/remindByPermissions"
,
method
=
RequestMethod
.
POST
)
public
void
addByPermissions
(
@RequestBody
String
body
)
throws
Exception
{
Date
currentTime
=
new
Date
();
String
currentTimeStr
=
DateUtil
.
dateTime2String
(
currentTime
);
JSONObject
data
=
new
JSONObject
(
body
);
JSONObject
remObject
=
data
.
getJSONObject
(
"remind"
);
String
remindId
=
UUID
.
randomUUID
().
toString
();
remObject
.
put
(
RemindConstants
.
ID
,
remindId
);
remObject
.
put
(
"createTime"
,
currentTimeStr
);
//remObject.put("remindTime", currentTimeStr);
/*
* remObject.put("remindContent", message);// 消息 remObject.put("data", billId);
* remObject.put("lookName", lookName);// 标题 remObject.put("lookType",
* lookType);
*/
remObject
.
put
(
"_type"
,
CommonConstants
.
REMIND_ENTITY
);
if
(
remObject
.
has
(
RemindConstants
.
BUSINESS_INFO
))
{
remObject
.
put
(
RemindConstants
.
BUSINESS_INFO
,
remObject
.
get
(
RemindConstants
.
BUSINESS_INFO
).
toString
());
}
KObject
kobject
=
(
KObject
)
JSONObjectUtils
.
toObject
(
remObject
.
toString
());
KObject
creater
=
MessageUtils
.
gerCurrentStaff
();
kobject
.
set
(
RemindConstants
.
SENDER
,
creater
);
kobject
.
validate
();
List
<
String
>
noticePerson
=
new
ArrayList
<
String
>();
// 获取提醒人员
//String privilegeName = "com.xyst.dinas.biz.auth.SensitiveInfoLook";//敏感信息查看功能权限
String
privilegeName
=
data
.
getString
(
"privilegeId"
);
//功能权限
List
<
UUID
>
staffList
=
dinasOrganizationService
.
queryStaffByRegionalCompanyForMessage
(
dinasOrganizationService
.
getCurrentRegionalCompanyId
());
for
(
UUID
staffId
:
staffList
)
{
KObject
staff
=
staffService
.
getById
(
staffId
);
List
<
Identity
>
list
=
identityService
.
getByUser
(
staff
.
get
(
"user"
).
getUuid
(
"id"
));
Identity
identity
=
list
.
get
(
0
);
Privilege
privilege
=
Amino
.
getApplicationMetadataContext
().
getBean
(
privilegeName
,
Privilege
.
class
);
Boolean
flag
=
privilegeService
.
canAccess
(
privilege
.
getId
(),
identity
.
getId
(),
null
);
if
(
flag
)
{
noticePerson
.
add
(
staffId
.
toString
());
}
}
JSONArray
parts
=
new
JSONArray
();
for
(
String
person
:
noticePerson
)
{
JSONObject
part
=
new
JSONObject
();
part
.
put
(
"participateId"
,
person
);
part
.
put
(
"participateType"
,
"person"
);
parts
.
put
(
part
);
}
List
<
KObject
>
listRes
=
new
ArrayList
<
KObject
>();
for
(
int
i
=
0
;
i
<
parts
.
length
();
i
++)
{
JSONObject
item
=
parts
.
getJSONObject
(
i
);
item
.
put
(
"_type"
,
CommonConstants
.
REM_PART_RELATION_ENTITTY
);
item
.
put
(
RemPartRelationConstants
.
REMIND_ID
,
remindId
);
item
.
put
(
RemPartRelationConstants
.
ID
,
UUID
.
randomUUID
());
String
partType
=
item
.
getString
(
RemPartRelationConstants
.
PARTICIPATE_TYPE
);
if
(
ParterType
.
PERSON
.
getPartnerType
().
equals
(
partType
))
{
// 参与者id是员工的id
String
staffPartId
=
item
.
getString
(
RemPartRelationConstants
.
PARTICIPATE_ID
);
// 根据员工的参与者id获得userId
KObject
staffKObject
=
staffService
.
getById
(
UUID
.
fromString
(
staffPartId
));
KObject
userKObject
=
staffKObject
.
get
(
Staff
.
USER
);
String
userId
=
userKObject
.
getString
(
"id"
);
item
.
put
(
RemPartRelationConstants
.
PARTICIPATE_ID
,
userId
);
}
KObject
entity
=
(
KObject
)
JSONObjectUtils
.
toObject
(
item
.
toString
());
listRes
.
add
(
entity
);
entity
.
validate
();
}
remService
.
add
(
kobject
,
listRes
);
}
}
}
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