Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
E
entrance_api
Project
Project
Details
Activity
Releases
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
王琮
entrance_api
Commits
0275d20b
Commit
0275d20b
authored
Dec 23, 2022
by
王琮
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
定时同步邀访信息
parent
3e887912
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
102 additions
and
5 deletions
+102
-5
JieLinkServiceImpl.java
.../integration/jieLink/service/impl/JieLinkServiceImpl.java
+0
-2
VisitInfomationRepository.java
.../org/rcisoft/sys/visit/dao/VisitInfomationRepository.java
+2
-0
VisitInfoMation.java
...in/java/org/rcisoft/sys/visit/entity/VisitInfoMation.java
+3
-0
VisitSyncSchedule.java
...ava/org/rcisoft/sys/visit/schedule/VisitSyncSchedule.java
+71
-0
VisitInfomationServiceImpl.java
...ft/sys/visit/service/impl/VisitInfomationServiceImpl.java
+6
-3
VisitInfomationMapper.xml
src/main/resources/mapper/VisitInfomationMapper.xml
+20
-0
No files found.
src/main/java/org/rcisoft/integration/jieLink/service/impl/JieLinkServiceImpl.java
View file @
0275d20b
...
...
@@ -9,8 +9,6 @@ import com.alibaba.fastjson.JSONArray;
import
com.alibaba.fastjson.JSONObject
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang3.StringUtils
;
import
org.joda.time.DateTimeUtils
;
import
org.rcisoft.core.model.CyPersistModel
;
import
org.rcisoft.integration.jieLink.common.SignUtils
;
import
org.rcisoft.integration.jieLink.dto.*
;
import
org.rcisoft.integration.jieLink.service.IJieLinkService
;
...
...
src/main/java/org/rcisoft/sys/visit/dao/VisitInfomationRepository.java
View file @
0275d20b
...
...
@@ -56,5 +56,7 @@ public interface VisitInfomationRepository extends CyBaseMapper<VisitInfoMation>
List
<
VisitUser
>
getUserList
(
@Param
(
"business_id"
)
int
business_id
);
List
<
VisitInfoMation
>
findByUser
(
VisitUser
visitUser
);
List
<
VisitInfoMation
>
findByTime
(
@Param
(
"time"
)
String
time
,
@Param
(
"realTime"
)
String
realTime
);
}
src/main/java/org/rcisoft/sys/visit/entity/VisitInfoMation.java
View file @
0275d20b
...
...
@@ -212,5 +212,8 @@ public class VisitInfoMation extends CyIdIncreEntity<VisitInfoMation> {
@Transient
//访客手机号(小程序登录用户手机号)
@TableField
(
exist
=
false
)
private
String
phone
;
// 同步状态(0:未同步,1:已同步)
private
String
synStatus
;
}
src/main/java/org/rcisoft/sys/visit/schedule/VisitSyncSchedule.java
0 → 100644
View file @
0275d20b
package
org
.
rcisoft
.
sys
.
visit
.
schedule
;
import
cn.hutool.core.date.DateUtil
;
import
org.apache.commons.lang3.StringUtils
;
import
org.rcisoft.integration.jieLink.service.IJieLinkService
;
import
org.rcisoft.sys.dictionary.entity.DictData
;
import
org.rcisoft.sys.dictionary.service.DictionaryService
;
import
org.rcisoft.sys.visit.dao.VisitInfomationRepository
;
import
org.rcisoft.sys.visit.entity.VisitInfoMation
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.scheduling.annotation.Scheduled
;
import
org.springframework.stereotype.Component
;
import
org.springframework.transaction.annotation.Isolation
;
import
org.springframework.transaction.annotation.Propagation
;
import
org.springframework.transaction.annotation.Transactional
;
import
java.util.Date
;
import
java.util.List
;
@Component
public
class
VisitSyncSchedule
{
@Autowired
private
DictionaryService
dictionaryServiceImpl
;
@Autowired
private
VisitInfomationRepository
visitInfomationRepository
;
@Autowired
private
IJieLinkService
jieLinkService
;
/**
* 捷顺开关
*/
@Value
(
"${jieLink.synchronization}"
)
private
boolean
synchronization
;
@Scheduled
(
cron
=
"0 0/30 * * * ?"
)
@Transactional
(
propagation
=
Propagation
.
REQUIRED
,
isolation
=
Isolation
.
DEFAULT
)
public
void
execute
()
{
// 查询提前访问时间阈值
List
<
DictData
>
dictDataList
=
dictionaryServiceImpl
.
selectByTypes
(
"timeThreshold"
);
long
times
=
20
*
60
*
1000
;
for
(
DictData
dicData
:
dictDataList
)
{
String
dictValue
=
dicData
.
getDictValue
();
//此处可能会有类型转换报错的BUG
int
factor
=
Integer
.
parseInt
(
dictValue
);
String
dictLabel
=
dicData
.
getDictLabel
();
if
(
StringUtils
.
equals
(
"advance"
,
dictLabel
))
{
times
=
times
+
factor
*
60
*
1000
;
}
}
// 获取此时未到访问时间已到禁止编辑时间的邀访记录同步到捷顺
Date
date
=
new
Date
();
String
realTime
=
DateUtil
.
format
(
date
,
"yyyy-MM-dd HH:mm:ss"
);
String
time
=
DateUtil
.
format
(
new
Date
(
date
.
getTime
()
+
times
),
"yyyy-MM-dd HH:mm:ss"
);
// 查询时间段内未同步的邀访记录
List
<
VisitInfoMation
>
records
=
visitInfomationRepository
.
findByTime
(
time
,
realTime
);
if
(
records
.
size
()
>
0
)
{
records
.
forEach
(
r
->{
if
(
synchronization
&&
jieLinkService
.
pushVisitorData
(
r
))
{
r
.
setSynStatus
(
"1"
);
visitInfomationRepository
.
updateById
(
r
);
}
});
}
}
}
src/main/java/org/rcisoft/sys/visit/service/impl/VisitInfomationServiceImpl.java
View file @
0275d20b
...
...
@@ -168,7 +168,10 @@ public class VisitInfomationServiceImpl extends ServiceImpl<VisitInfomationRepos
u
.
setNormal
();
visitUserRepository
.
insert
(
u
);
});
//jieLinkService.pushVisitorData(visitInfomation);
/* if(jieLinkService.pushVisitorData(visitInfomation)) {
visitInfomation.setSynStatus("1");
baseMapper.updateById(visitInfomation);
}*/
return
new
CyPersistModel
(
line
);
}
...
...
@@ -651,7 +654,7 @@ public class VisitInfomationServiceImpl extends ServiceImpl<VisitInfomationRepos
Set
set
=
new
HashSet
();
for
(
int
i
=
0
;
i
<
regions
.
length
;
i
++)
{
for
(
int
i
=
0
;
i
<
regions
.
length
;
i
++)
{
set
.
add
(
regions
[
i
]);
}
regions
=
(
String
[])
set
.
toArray
(
new
String
[
set
.
size
()]);
...
...
@@ -669,7 +672,7 @@ public class VisitInfomationServiceImpl extends ServiceImpl<VisitInfomationRepos
if
(
regionCode
.
length
()
>
0
)
{
regionCode
=
regionCode
.
substring
(
0
,
regionCode
.
length
()
-
1
);
visitInfoMation
.
setVisitRegionCode
(
regionCode
);
}
else
{
}
else
{
BeanUtil
.
copyProperties
(
visitInfoDto
,
errorDTO
);
errorDTO
.
setError
(
"访问区域不存在!"
);
errorDTOArrayList
.
add
(
errorDTO
);
...
...
src/main/resources/mapper/VisitInfomationMapper.xml
View file @
0275d20b
...
...
@@ -436,5 +436,25 @@
</if>
and vu.person_id =#{personId}
</select>
<select
id=
"findByTime"
resultType=
"org.rcisoft.sys.visit.entity.VisitInfoMation"
>
select vi.business_id,
vi.user_name,
vi.dept_name,
vi.post_name,
vi.create_date,
vi.visit_reason,
vi.visit_region,
vi.visit_date,
vi.visit_time,
vi.visit_status,
vu.user_name,
vu.visit_phone
from visit_infomation vi
where vi.del_flag = '0'
and vi.flag = '1'
and vi.syn_status = '0'
and vi.visit_real_time
>
= #{realTime}
and vi.visit_real_time
<
= #{time}
</select>
</mapper>
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