Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
A
ai-api
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
赵啸非
ai-api
Commits
64b13181
Commit
64b13181
authored
Nov 01, 2023
by
赵啸非
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改配置文件
parent
01bd6cc5
Changes
43
Hide whitespace changes
Inline
Side-by-side
Showing
43 changed files
with
1808 additions
and
38 deletions
+1808
-38
pom.xml
pom.xml
+11
-2
src/main/java/com/lilosoft/api/bean/receive/ErrorsItem.java
src/main/java/com/lilosoft/api/bean/receive/ErrorsItem.java
+11
-0
src/main/java/com/lilosoft/api/bean/receive/FileDataItem.java
...main/java/com/lilosoft/api/bean/receive/FileDataItem.java
+19
-0
src/main/java/com/lilosoft/api/bean/receive/ProjectData.java
src/main/java/com/lilosoft/api/bean/receive/ProjectData.java
+16
-0
src/main/java/com/lilosoft/api/bean/receive/ReceiveMsgInfo.java
...in/java/com/lilosoft/api/bean/receive/ReceiveMsgInfo.java
+31
-0
src/main/java/com/lilosoft/api/controller/MqConsumer.java
src/main/java/com/lilosoft/api/controller/MqConsumer.java
+15
-10
src/main/java/com/lilosoft/api/service/ApplyService.java
src/main/java/com/lilosoft/api/service/ApplyService.java
+32
-25
src/main/java/com/lilosoft/api/service/ComplexService.java
src/main/java/com/lilosoft/api/service/ComplexService.java
+93
-0
src/main/java/com/lilosoft/api/service/complexWindow/CommonData.java
...va/com/lilosoft/api/service/complexWindow/CommonData.java
+37
-0
src/main/java/com/lilosoft/api/service/complexWindow/ComplexWindowAbstract.java
...soft/api/service/complexWindow/ComplexWindowAbstract.java
+75
-0
src/main/java/com/lilosoft/api/service/complexWindow/WXHXPJYXKFRBG.java
...com/lilosoft/api/service/complexWindow/WXHXPJYXKFRBG.java
+162
-0
src/main/java/com/lilosoft/complex/AbstractComplexService.java
...ain/java/com/lilosoft/complex/AbstractComplexService.java
+54
-0
src/main/java/com/lilosoft/complex/BaseReq.java
src/main/java/com/lilosoft/complex/BaseReq.java
+13
-0
src/main/java/com/lilosoft/complex/ComplexApiRest.java
src/main/java/com/lilosoft/complex/ComplexApiRest.java
+96
-0
src/main/java/com/lilosoft/complex/IComplexService.java
src/main/java/com/lilosoft/complex/IComplexService.java
+10
-0
src/main/java/com/lilosoft/complex/Rest.java
src/main/java/com/lilosoft/complex/Rest.java
+99
-0
src/main/java/com/lilosoft/complex/matter/model/req/AcceptReq.java
...java/com/lilosoft/complex/matter/model/req/AcceptReq.java
+18
-0
src/main/java/com/lilosoft/complex/matter/model/req/ApplicantLeagal.java
...om/lilosoft/complex/matter/model/req/ApplicantLeagal.java
+12
-0
src/main/java/com/lilosoft/complex/matter/model/req/ApplicantPersonal.java
.../lilosoft/complex/matter/model/req/ApplicantPersonal.java
+12
-0
src/main/java/com/lilosoft/complex/matter/model/req/DeviceLoginReq.java
...com/lilosoft/complex/matter/model/req/DeviceLoginReq.java
+8
-0
src/main/java/com/lilosoft/complex/matter/model/req/HandlingsItem.java
.../com/lilosoft/complex/matter/model/req/HandlingsItem.java
+9
-0
src/main/java/com/lilosoft/complex/matter/model/req/ImplementationReq.java
.../lilosoft/complex/matter/model/req/ImplementationReq.java
+25
-0
src/main/java/com/lilosoft/complex/matter/model/req/InfoMap.java
...n/java/com/lilosoft/complex/matter/model/req/InfoMap.java
+9
-0
src/main/java/com/lilosoft/complex/matter/model/req/MaterialsItem.java
.../com/lilosoft/complex/matter/model/req/MaterialsItem.java
+11
-0
src/main/java/com/lilosoft/complex/matter/model/req/MatterReq.java
...java/com/lilosoft/complex/matter/model/req/MatterReq.java
+11
-0
src/main/java/com/lilosoft/complex/matter/model/req/UploadFileReq.java
.../com/lilosoft/complex/matter/model/req/UploadFileReq.java
+14
-0
src/main/java/com/lilosoft/complex/matter/model/rsp/AcceptRspInfo.java
.../com/lilosoft/complex/matter/model/rsp/AcceptRspInfo.java
+154
-0
src/main/java/com/lilosoft/complex/matter/model/rsp/HandleAddress.java
.../com/lilosoft/complex/matter/model/rsp/HandleAddress.java
+26
-0
src/main/java/com/lilosoft/complex/matter/model/rsp/LoginRspInfo.java
...a/com/lilosoft/complex/matter/model/rsp/LoginRspInfo.java
+10
-0
src/main/java/com/lilosoft/complex/matter/model/rsp/MatterListInfo.java
...com/lilosoft/complex/matter/model/rsp/MatterListInfo.java
+12
-0
src/main/java/com/lilosoft/complex/matter/model/rsp/MatterRespInfo.java
...com/lilosoft/complex/matter/model/rsp/MatterRespInfo.java
+85
-0
src/main/java/com/lilosoft/complex/matter/model/rsp/SelfDeviceInfo.java
...com/lilosoft/complex/matter/model/rsp/SelfDeviceInfo.java
+24
-0
src/main/java/com/lilosoft/complex/matter/model/rsp/SysUser.java
...n/java/com/lilosoft/complex/matter/model/rsp/SysUser.java
+43
-0
src/main/java/com/lilosoft/complex/matter/model/rsp/matter/ChildrenItem.java
...ilosoft/complex/matter/model/rsp/matter/ChildrenItem.java
+18
-0
src/main/java/com/lilosoft/complex/matter/model/rsp/matter/MaterialsItem.java
...losoft/complex/matter/model/rsp/matter/MaterialsItem.java
+16
-0
src/main/java/com/lilosoft/complex/matter/model/rsp/matter/MatterWorkInfo.java
...osoft/complex/matter/model/rsp/matter/MatterWorkInfo.java
+14
-0
src/main/java/com/lilosoft/complex/matter/model/rsp/work/WorkInfo.java
.../com/lilosoft/complex/matter/model/rsp/work/WorkInfo.java
+38
-0
src/main/java/com/lilosoft/complex/matter/service/IComplexMatterService.java
...ilosoft/complex/matter/service/IComplexMatterService.java
+80
-0
src/main/java/com/lilosoft/complex/matter/service/impl/ComplexMatterServiceImpl.java
...complex/matter/service/impl/ComplexMatterServiceImpl.java
+203
-0
src/main/java/com/lilosoft/core/enums/TypeEnum.java
src/main/java/com/lilosoft/core/enums/TypeEnum.java
+65
-0
src/main/java/com/lilosoft/core/enums/YesNoEnum.java
src/main/java/com/lilosoft/core/enums/YesNoEnum.java
+64
-0
src/main/java/com/lilosoft/core/exception/AppException.java
src/main/java/com/lilosoft/core/exception/AppException.java
+51
-0
src/main/resources/application.yml
src/main/resources/application.yml
+2
-1
No files found.
pom.xml
View file @
64b13181
...
@@ -35,7 +35,8 @@
...
@@ -35,7 +35,8 @@
<profiles.baseUrl>
http://10.225.128.55
</profiles.baseUrl>
<profiles.baseUrl>
http://10.225.128.55
</profiles.baseUrl>
<profiles.ocrUrl>
http://rocrt.egovrobot.com/
</profiles.ocrUrl>
<profiles.ocrUrl>
http://rocrt.egovrobot.com/
</profiles.ocrUrl>
<profiles.apiUrl>
http://api.egovrobot.com
</profiles.apiUrl>
<profiles.apiUrl>
http://api.egovrobot.com
</profiles.apiUrl>
<profiles.mq>
sanya
</profiles.mq>
<profiles.robertServerUrl>
http://localhost:8099/
</profiles.robertServerUrl>
<profiles.mq>
yibin
</profiles.mq>
<profiles.activemq.brokerUrl>
tcp://59.175.148.30:62818
</profiles.activemq.brokerUrl>
<profiles.activemq.brokerUrl>
tcp://59.175.148.30:62818
</profiles.activemq.brokerUrl>
<profiles.publish.path>
/home/publish
</profiles.publish.path>
<profiles.publish.path>
/home/publish
</profiles.publish.path>
</properties>
</properties>
...
@@ -50,7 +51,7 @@
...
@@ -50,7 +51,7 @@
<profiles.baseUrl>
http://10.225.128.55
</profiles.baseUrl>
<profiles.baseUrl>
http://10.225.128.55
</profiles.baseUrl>
<profiles.ocrUrl>
http://rocrt.egovrobot.com/
</profiles.ocrUrl>
<profiles.ocrUrl>
http://rocrt.egovrobot.com/
</profiles.ocrUrl>
<profiles.apiUrl>
http://api.egovrobot.com
</profiles.apiUrl>
<profiles.apiUrl>
http://api.egovrobot.com
</profiles.apiUrl>
<profiles.mq>
sanya
</profiles.mq>
<profiles.mq>
yibin
</profiles.mq>
<profiles.activemq.brokerUrl>
tcp://8.136.255.30:11044
</profiles.activemq.brokerUrl>
<profiles.activemq.brokerUrl>
tcp://8.136.255.30:11044
</profiles.activemq.brokerUrl>
<profiles.publish.path>
/home/publish
</profiles.publish.path>
<profiles.publish.path>
/home/publish
</profiles.publish.path>
</properties>
</properties>
...
@@ -126,6 +127,14 @@
...
@@ -126,6 +127,14 @@
<artifactId>
hutool-all
</artifactId>
<artifactId>
hutool-all
</artifactId>
<version>
5.8.4
</version>
<version>
5.8.4
</version>
</dependency>
</dependency>
<dependency>
<groupId>
com.alibaba
</groupId>
<artifactId>
fastjson
</artifactId>
<version>
1.2.83
</version>
</dependency>
</dependencies>
</dependencies>
<build>
<build>
...
...
src/main/java/com/lilosoft/api/bean/receive/ErrorsItem.java
0 → 100644
View file @
64b13181
package
com.lilosoft.api.bean.receive
;
import
lombok.Data
;
@Data
public
class
ErrorsItem
{
private
int
errorType
;
private
String
name
;
private
String
error
;
private
String
fileId
;
}
\ No newline at end of file
src/main/java/com/lilosoft/api/bean/receive/FileDataItem.java
0 → 100644
View file @
64b13181
package
com.lilosoft.api.bean.receive
;
import
lombok.Data
;
@Data
public
class
FileDataItem
{
private
String
fileName
;
private
String
jsonData
;
private
String
fileUrl
;
private
String
id
;
private
String
fileId
;
private
String
name
;
private
byte
[]
bytes
;
private
String
downloadUrl
;
}
\ No newline at end of file
src/main/java/com/lilosoft/api/bean/receive/ProjectData.java
0 → 100644
View file @
64b13181
package
com.lilosoft.api.bean.receive
;
import
lombok.Data
;
@Data
public
class
ProjectData
{
private
String
transactcode
;
private
int
times
;
private
String
extUrl
;
private
String
taskUrl
;
private
String
netUrl
;
private
String
name
;
private
String
replyVoice
;
private
String
localId
;
private
String
isNet
;
}
\ No newline at end of file
src/main/java/com/lilosoft/api/bean/receive/ReceiveMsgInfo.java
0 → 100644
View file @
64b13181
package
com.lilosoft.api.bean.receive
;
import
java.util.List
;
import
lombok.Data
;
@Data
public
class
ReceiveMsgInfo
{
private
String
msg
;
private
String
wordUrl
;
private
String
isSkip
;
private
String
itemCode
;
private
String
code
;
private
String
isRpa
;
private
List
<
FileDataItem
>
fileData
;
private
String
type
;
private
String
batchId
;
private
String
isPrintWord
;
private
List
<
Object
>
labels
;
private
ProjectData
projectData
;
private
String
artificialType
;
private
String
rpaData
;
private
String
wordTips
;
private
String
scanUrl
;
private
Boolean
success
;
private
String
fileUrl
;
private
String
pageUrl
;
private
String
enterpriseId
;
private
String
isReceipt
;
private
String
projectId
;
private
List
<
ErrorsItem
>
errors
;
}
\ No newline at end of file
src/main/java/com/lilosoft/api/controller/MqConsumer.java
View file @
64b13181
package
com.lilosoft.api.controller
;
package
com.lilosoft.api.controller
;
import
cn.hutool.core.util.IdUtil
;
import
cn.hutool.core.util.IdUtil
;
import
cn.hutool.json.JSON
;
import
cn.hutool.json.JSONUtil
;
import
cn.hutool.json.JSONUtil
;
import
com.alibaba.fastjson.JSON
;
import
com.lilosoft.api.api.RobotApi
;
import
com.lilosoft.api.api.RobotApi
;
import
com.lilosoft.api.bean.RobotCaseRecord
;
import
com.lilosoft.api.bean.RobotCaseRecord
;
import
com.lilosoft.api.bean.receive.ReceiveMsgInfo
;
import
com.lilosoft.api.service.ApplyService
;
import
com.lilosoft.api.service.ApplyService
;
import
com.lilosoft.api.service.ComplexService
;
import
com.lilosoft.core.utils.ObjectUtils
;
import
com.lilosoft.core.utils.ObjectUtils
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.jms.annotation.JmsListener
;
import
org.springframework.jms.annotation.JmsListener
;
...
@@ -25,6 +25,8 @@ public class MqConsumer {
...
@@ -25,6 +25,8 @@ public class MqConsumer {
@Autowired
@Autowired
private
ApplyService
applyService
;
private
ApplyService
applyService
;
@Autowired
private
ComplexService
complexService
;
@Autowired
@Autowired
private
RobotApi
robotApi
;
private
RobotApi
robotApi
;
...
@@ -34,9 +36,7 @@ public class MqConsumer {
...
@@ -34,9 +36,7 @@ public class MqConsumer {
@JmsListener
(
destination
=
"${api.mq}"
,
containerFactory
=
"jmsListenerContainerQueue"
)
@JmsListener
(
destination
=
"${api.mq}"
,
containerFactory
=
"jmsListenerContainerQueue"
)
public
void
receiveMsg
(
HashMap
<
String
,
String
>
text
)
{
public
void
receiveMsg
(
HashMap
<
String
,
String
>
text
)
{
// log.info("receive msg==>{}", JSONUtil.toJsonStr(text));
log
.
info
(
"receive msg==>{}"
,
JSONUtil
.
toJsonStr
(
text
));
RobotCaseRecord
caseRecord
=
new
RobotCaseRecord
();
RobotCaseRecord
caseRecord
=
new
RobotCaseRecord
();
caseRecord
.
setId
(
IdUtil
.
simpleUUID
());
caseRecord
.
setId
(
IdUtil
.
simpleUUID
());
caseRecord
.
setContent
(
text
.
get
(
"content"
));
caseRecord
.
setContent
(
text
.
get
(
"content"
));
...
@@ -45,15 +45,20 @@ public class MqConsumer {
...
@@ -45,15 +45,20 @@ public class MqConsumer {
caseRecord
.
setUpdateTime
(
new
Date
());
caseRecord
.
setUpdateTime
(
new
Date
());
try
{
try
{
robotApi
.
saveRecord
(
caseRecord
);
robotApi
.
saveRecord
(
caseRecord
);
HashMap
<
String
,
Object
>
entries
=
JSONUtil
.
toBean
(
text
.
get
(
"content"
),
HashMap
.
class
);
String
apply
=
applyService
.
webApply
(
entries
);
String
content
=
text
.
get
(
"content"
);
if
(
ObjectUtils
.
isEmpty
(
apply
))
{
ReceiveMsgInfo
receiveMsgInfo
=
JSON
.
parseObject
(
content
,
ReceiveMsgInfo
.
class
);
// HashMap<String, Object> entries = JSONUtil.toBean(text.get("content"), HashMap.class);
// String apply = applyService.webApply(entries);
String
apply
=
complexService
.
windowApply
(
receiveMsgInfo
);
/* if (ObjectUtils.isEmpty(apply)) {
caseRecord.setSendFlag("2");
caseRecord.setSendFlag("2");
caseRecord.setMsg("success");
caseRecord.setMsg("success");
} else {
} else {
caseRecord.setSendFlag("1");
caseRecord.setSendFlag("1");
caseRecord.setMsg(apply);
caseRecord.setMsg(apply);
}
}
*/
robotApi
.
saveRecord
(
caseRecord
);
robotApi
.
saveRecord
(
caseRecord
);
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
caseRecord
.
setSendFlag
(
"1"
);
caseRecord
.
setSendFlag
(
"1"
);
...
...
src/main/java/com/lilosoft/api/service/ApplyService.java
View file @
64b13181
...
@@ -4,6 +4,8 @@ import cn.hutool.core.date.DateUtil;
...
@@ -4,6 +4,8 @@ import cn.hutool.core.date.DateUtil;
import
cn.hutool.json.JSONArray
;
import
cn.hutool.json.JSONArray
;
import
cn.hutool.json.JSONObject
;
import
cn.hutool.json.JSONObject
;
import
cn.hutool.json.JSONUtil
;
import
cn.hutool.json.JSONUtil
;
import
com.lilosoft.api.service.complexWindow.CommonData
;
import
com.lilosoft.api.service.complexWindow.ComplexWindowAbstract
;
import
com.lilosoft.core.utils.Base64Helper
;
import
com.lilosoft.core.utils.Base64Helper
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
...
@@ -20,21 +22,27 @@ public class ApplyService extends PublicService {
...
@@ -20,21 +22,27 @@ public class ApplyService extends PublicService {
*/
*/
public
String
webApply
(
HashMap
<
String
,
Object
>
paramsMap
)
throws
Exception
{
public
String
webApply
(
HashMap
<
String
,
Object
>
paramsMap
)
throws
Exception
{
logger
.
info
(
JSONUtil
.
toJsonStr
(
paramsMap
));
logger
.
info
(
JSONUtil
.
toJsonStr
(
paramsMap
));
String
itemCode
=
paramsMap
.
get
(
"ItemCode"
).
toString
();
//事项编码,通过这个获取需要提交到综合窗口服务 空不提交
if
(!
paramsMap
.
containsKey
(
"address"
)){
String
itemCode
=
(
String
)
paramsMap
.
getOrDefault
(
"ItemCode"
,
""
);
ComplexWindowAbstract
complexWindowAbstract
=
ComplexWindowAbstract
.
newType
(
itemCode
);
CommonData
commonData
=
new
CommonData
();
complexWindowAbstract
.
doHandleWork
(
commonData
);
if
(!
paramsMap
.
containsKey
(
"address"
))
{
paramsMap
.
put
(
"address"
,
""
);
//办事人联系地址
paramsMap
.
put
(
"address"
,
""
);
//办事人联系地址
}
}
HashMap
<
String
,
Object
>
formData
=
new
HashMap
<>();
//需要提交的表单数据(不同事项不同字段),需根据formId获取表单字段
HashMap
<
String
,
Object
>
formData
=
new
HashMap
<>();
//需要提交的表单数据(不同事项不同字段),需根据formId获取表单字段
String
result
=
""
;
//返回结果
String
result
=
""
;
//返回结果
boolean
check
=
true
;
//事项是否查找到,默认事项已经查找到
boolean
check
=
true
;
//事项是否查找到,默认事项已经查找到
if
(
"46020400WJ-XK-1104"
.
equals
(
itemCode
))
{
//公共场所卫生许可证注销
if
(
"46020400WJ-XK-1104"
.
equals
(
itemCode
))
{
//公共场所卫生许可证注销
ggcswxxkzx
(
paramsMap
,
formData
);
ggcswxxkzx
(
paramsMap
,
formData
);
}
else
{
}
else
{
check
=
false
;
check
=
false
;
result
=
"未查询到相关事项;"
;
result
=
"未查询到相关事项;"
;
logger
.
error
(
result
+
JSONUtil
.
toJsonStr
(
paramsMap
));
logger
.
error
(
result
+
JSONUtil
.
toJsonStr
(
paramsMap
));
}
}
if
(
check
)
{
if
(
check
)
{
//通用上传接口
//通用上传接口
result
=
super
.
webApply
(
paramsMap
,
formData
);
result
=
super
.
webApply
(
paramsMap
,
formData
);
}
}
...
@@ -45,7 +53,7 @@ public class ApplyService extends PublicService {
...
@@ -45,7 +53,7 @@ public class ApplyService extends PublicService {
/**
/**
* 公共场所卫生许可证注销
* 公共场所卫生许可证注销
*/
*/
private
void
ggcswxxkzx
(
HashMap
<
String
,
Object
>
paramsMap
,
HashMap
<
String
,
Object
>
formData
){
private
void
ggcswxxkzx
(
HashMap
<
String
,
Object
>
paramsMap
,
HashMap
<
String
,
Object
>
formData
)
{
//组装第三步提交表单需要的数据,此数据是根据当前事项表单字段获取
//组装第三步提交表单需要的数据,此数据是根据当前事项表单字段获取
formData
.
put
(
"ShenQingRiQi"
,
DateUtil
.
today
());
//申请日期
formData
.
put
(
"ShenQingRiQi"
,
DateUtil
.
today
());
//申请日期
formData
.
put
(
"XuKeZhengHao"
,
""
);
//许可证号
formData
.
put
(
"XuKeZhengHao"
,
""
);
//许可证号
...
@@ -55,14 +63,14 @@ public class ApplyService extends PublicService {
...
@@ -55,14 +63,14 @@ public class ApplyService extends PublicService {
formData
.
put
(
"FaDingDaiBiaoRen"
,
paramsMap
.
get
(
"FaDingDaiBiaoRen"
));
//法定代表人
formData
.
put
(
"FaDingDaiBiaoRen"
,
paramsMap
.
get
(
"FaDingDaiBiaoRen"
));
//法定代表人
formData
.
put
(
"TongYiSheHuiXinYongDaiMa"
,
paramsMap
.
get
(
"TongYiSheHuiXinYongDaiMa"
));
//统一社会信用代码
formData
.
put
(
"TongYiSheHuiXinYongDaiMa"
,
paramsMap
.
get
(
"TongYiSheHuiXinYongDaiMa"
));
//统一社会信用代码
JSONArray
materials
=
JSONUtil
.
parseArray
(
paramsMap
.
get
(
"materials"
));
//材料列表
JSONArray
materials
=
JSONUtil
.
parseArray
(
paramsMap
.
get
(
"materials"
));
//材料列表
for
(
int
n
=
0
,
m
=
materials
.
size
();
n
<
m
;
n
++)
{
for
(
int
n
=
0
,
m
=
materials
.
size
();
n
<
m
;
n
++)
{
JSONObject
jsonObject1
=
materials
.
getJSONObject
(
n
);
JSONObject
jsonObject1
=
materials
.
getJSONObject
(
n
);
String
fileId
=
jsonObject1
.
getStr
(
"fileId"
);
//当前材料编码
String
fileId
=
jsonObject1
.
getStr
(
"fileId"
);
//当前材料编码
if
(
"hygiene"
.
equals
(
fileId
)
||
"business"
.
equals
(
fileId
))
{
//公共场所卫生许可证/营业执照归为一类
if
(
"hygiene"
.
equals
(
fileId
)
||
"business"
.
equals
(
fileId
))
{
//公共场所卫生许可证/营业执照归为一类
jsonObject1
.
putOpt
(
"fileCode"
,
"46020400WJ-XK-1104-00003"
);
jsonObject1
.
putOpt
(
"fileCode"
,
"46020400WJ-XK-1104-00003"
);
}
else
if
(
"applicationForm"
.
equals
(
fileId
)
||
"applicationText"
.
equals
(
fileId
))
{
//关于注销公共场所卫生许可证的申请书/申请表归为一类
}
else
if
(
"applicationForm"
.
equals
(
fileId
)
||
"applicationText"
.
equals
(
fileId
))
{
//关于注销公共场所卫生许可证的申请书/申请表归为一类
jsonObject1
.
putOpt
(
"fileCode"
,
"46020400WJ-XK-1104-00002"
);
jsonObject1
.
putOpt
(
"fileCode"
,
"46020400WJ-XK-1104-00002"
);
}
else
if
(
"idcard"
.
equals
(
fileId
))
{
//多个身份证归为一类
}
else
if
(
"idcard"
.
equals
(
fileId
))
{
//多个身份证归为一类
jsonObject1
.
putOpt
(
"fileCode"
,
"46020400WJ-XK-1104-00001"
);
jsonObject1
.
putOpt
(
"fileCode"
,
"46020400WJ-XK-1104-00001"
);
}
else
{
//多余材料归为证照类
}
else
{
//多余材料归为证照类
jsonObject1
.
putOpt
(
"fileCode"
,
"46020400WJ-XK-1104-00003"
);
jsonObject1
.
putOpt
(
"fileCode"
,
"46020400WJ-XK-1104-00003"
);
...
@@ -80,7 +88,7 @@ public class ApplyService extends PublicService {
...
@@ -80,7 +88,7 @@ public class ApplyService extends PublicService {
}
}
//危险化学品经营许可证变更-法人变更
//危险化学品经营许可证变更-法人变更
private
void
wxhxpjyxkzbg
(
HashMap
<
String
,
Object
>
paramsMap
,
HashMap
<
String
,
Object
>
formData
){
private
void
wxhxpjyxkzbg
(
HashMap
<
String
,
Object
>
paramsMap
,
HashMap
<
String
,
Object
>
formData
)
{
String
temp
=
String
.
valueOf
(
formData
.
get
(
"rpaData"
));
String
temp
=
String
.
valueOf
(
formData
.
get
(
"rpaData"
));
String
rpaData
=
new
String
(
Base64Helper
.
decode
(
temp
));
String
rpaData
=
new
String
(
Base64Helper
.
decode
(
temp
));
...
@@ -88,26 +96,25 @@ public class ApplyService extends PublicService {
...
@@ -88,26 +96,25 @@ public class ApplyService extends PublicService {
List
<
Map
<
String
,
Object
>>
handlings
=
new
ArrayList
<>();
List
<
Map
<
String
,
Object
>>
handlings
=
new
ArrayList
<>();
Map
<
String
,
Object
>
handling
=
new
HashMap
<>();
Map
<
String
,
Object
>
handling
=
new
HashMap
<>();
handling
.
put
(
"eventId"
,
"852dcb2bb1aa70255871f75cf4868fa7"
);
//综窗平台事项id
handling
.
put
(
"eventId"
,
"852dcb2bb1aa70255871f75cf4868fa7"
);
//综窗平台事项id
handling
.
put
(
"objectType"
,
"O"
);
//事项面对对象,P自然人,O法人
handling
.
put
(
"objectType"
,
"O"
);
//事项面对对象,P自然人,O法人
handlings
.
add
(
handling
);
handlings
.
add
(
handling
);
formData
.
put
(
"handlings"
,
handlings
);
formData
.
put
(
"handlings"
,
handlings
);
formData
.
put
(
"infoMap"
,
null
);
//表单信息,办件要素接口获取,此事项无
formData
.
put
(
"infoMap"
,
null
);
//表单信息,办件要素接口获取,此事项无
Map
<
String
,
Object
>
applicantLegal
=
new
HashMap
<>();
//申请人信息
Map
<
String
,
Object
>
applicantLegal
=
new
HashMap
<>();
//申请人信息
applicantLegal
.
put
(
"applicantName"
,
null
);
//姓名
applicantLegal
.
put
(
"applicantName"
,
null
);
//姓名
applicantLegal
.
put
(
"documentId"
,
null
);
//证件类型
applicantLegal
.
put
(
"documentId"
,
null
);
//证件类型
applicantLegal
.
put
(
"applicantIdNumber"
,
null
);
//证件号码
applicantLegal
.
put
(
"applicantIdNumber"
,
null
);
//证件号码
formData
.
put
(
"applicantLegal"
,
applicantLegal
);
formData
.
put
(
"applicantLegal"
,
applicantLegal
);
Map
<
String
,
Object
>
legalProxy
=
new
HashMap
<>();
//法人信息,法人事项必填
Map
<
String
,
Object
>
legalProxy
=
new
HashMap
<>();
//法人信息,法人事项必填
legalProxy
.
put
(
"legalName"
,
rpa
.
getStr
(
"principalName"
));
//姓名
legalProxy
.
put
(
"legalName"
,
rpa
.
getStr
(
"principalName"
));
//姓名
legalProxy
.
put
(
"documentId"
,
null
);
//证件类型
legalProxy
.
put
(
"documentId"
,
null
);
//证件类型
legalProxy
.
put
(
"legalIdNumber"
,
rpa
.
getStr
(
"principalCardNumber"
));
//证件号码
legalProxy
.
put
(
"legalIdNumber"
,
rpa
.
getStr
(
"principalCardNumber"
));
//证件号码
formData
.
put
(
"legalProxy"
,
legalProxy
);
formData
.
put
(
"legalProxy"
,
legalProxy
);
List
<
String
>
itemsIds
=
new
ArrayList
<>();
//情形项id集合
List
<
String
>
itemsIds
=
new
ArrayList
<>();
//情形项id集合
itemsIds
.
add
(
"d32d382b1b3ff119378c2813bd581aed"
);
//综窗平台情形项id
itemsIds
.
add
(
"d32d382b1b3ff119378c2813bd581aed"
);
//综窗平台情形项id
formData
.
put
(
"itemsIds"
,
itemsIds
);
formData
.
put
(
"itemsIds"
,
itemsIds
);
}
}
}
}
src/main/java/com/lilosoft/api/service/ComplexService.java
0 → 100644
View file @
64b13181
package
com.lilosoft.api.service
;
import
cn.hutool.core.date.DateUtil
;
import
cn.hutool.json.JSONArray
;
import
cn.hutool.json.JSONObject
;
import
cn.hutool.json.JSONUtil
;
import
com.lilosoft.api.api.OcrApi
;
import
com.lilosoft.api.bean.receive.ReceiveMsgInfo
;
import
com.lilosoft.api.service.complexWindow.CommonData
;
import
com.lilosoft.api.service.complexWindow.ComplexWindowAbstract
;
import
com.lilosoft.core.utils.Base64Helper
;
import
lombok.extern.slf4j.Slf4j
;
import
okhttp3.ResponseBody
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.stereotype.Service
;
import
retrofit2.Response
;
import
java.io.IOException
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
/**
* 综窗处理类
*
* @author: zxfei
* @date: 2023/10/29 10:51
*/
@Service
@Slf4j
public
class
ComplexService
extends
PublicService
{
@Autowired
private
OcrApi
ocrApi
;
@Value
(
"${complex.robertServerUrl:''}"
)
protected
String
robertServerUrl
;
/**
* 综窗申报
*/
public
String
windowApply
(
ReceiveMsgInfo
receiveMsgInfo
)
throws
Exception
{
logger
.
info
(
JSONUtil
.
toJsonStr
(
receiveMsgInfo
));
Boolean
success
=
receiveMsgInfo
.
getSuccess
();
receiveMsgInfo
.
getFileData
().
forEach
(
item
->
{
Response
<
ResponseBody
>
response
=
ocrApi
.
downloadFile
(
item
.
getFileUrl
(),
item
.
getFileName
(),
"0"
);
boolean
successful
=
response
.
isSuccessful
();
int
code
=
response
.
code
();
if
(
successful
&&
code
==
200
)
{
ResponseBody
responseBody
=
response
.
body
();
//上传受理平台
if
(
responseBody
!=
null
)
{
try
{
byte
[]
bytes
=
responseBody
.
bytes
();
}
catch
(
IOException
e
)
{
throw
new
RuntimeException
(
e
);
}
}
}
});
if
(
success
)
{
ComplexWindowAbstract
complexWindowAbstract
=
ComplexWindowAbstract
.
newType
(
receiveMsgInfo
.
getItemCode
());
CommonData
commonData
=
new
CommonData
();
commonData
.
setRobertServerUrl
(
robertServerUrl
);
commonData
.
setFileData
(
receiveMsgInfo
.
getFileData
());
complexWindowAbstract
.
doHandleWork
(
commonData
);
}
else
{
log
.
info
(
"预审事项未通过"
);
}
String
result
=
""
;
//返回结果
boolean
check
=
true
;
//事项是否查找到,默认事项已经查找到
return
result
;
}
}
src/main/java/com/lilosoft/api/service/complexWindow/CommonData.java
0 → 100644
View file @
64b13181
package
com.lilosoft.api.service.complexWindow
;
import
com.lilosoft.api.bean.receive.FileDataItem
;
import
lombok.Data
;
import
java.util.Date
;
import
java.util.List
;
/**
* 通用参数
*
* @author:
* @date: 2023/7/31 15:27
*/
@Data
public
class
CommonData
{
private
String
deviceLogo
;
private
String
robertServerUrl
;
private
List
<
FileDataItem
>
fileData
;
private
Date
attendanceDate
;
private
Long
staffId
;
//当前日期
private
String
dateStr
;
}
src/main/java/com/lilosoft/api/service/complexWindow/ComplexWindowAbstract.java
0 → 100644
View file @
64b13181
package
com.lilosoft.api.service.complexWindow
;
import
cn.hutool.http.HttpUtil
;
import
com.alibaba.fastjson.JSONObject
;
import
com.lilosoft.core.enums.TypeEnum
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.util.ObjectUtils
;
/**
* 综合窗口抽象类
*
* @author:
* @date: 2023/7/31 15:09
*/
@Slf4j
public
abstract
class
ComplexWindowAbstract
{
public
String
url
=
"/self-device-info/login"
;
public
String
token
=
"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyTnVtIjoibGoiLCJoYW5kbGVBZGRyZXNzSWQiOiIxNDE0MTYyODc4OTk3MDIwNjczIiwiZGVwdElkIjoiNTExNTAwMzEiLCJleHAiOjE2OTg2NzIzNzAsInVzZXJJZCI6IjEzMTIiLCJ3aW5kb3dJZCI6IjE1ODUwOTEyNDU4ODgzNjQ1NDUifQ.2a6N9xc2D_X2LSOpeiUPdMWvaLhOefgMr176pmC-X_k"
;
private
String
type
;
abstract
String
getType
();
public
abstract
void
doHandleWork
(
CommonData
commonData
);
public
static
ComplexWindowAbstract
newType
(
String
type
)
{
if
(
type
==
TypeEnum
.
危险化学品经营许可法人变更
.
getValue
())
{
return
new
WXHXPJYXKFRBG
(
type
);
}
/* if (type == TypeEnum.固定班制.getValue()) {
//return new FixWorkAttendance(type);
return new FixWorkOtherAttendance(type);
} else if (type == TypeEnum.自由工时.getValue()) {
return new FreedomWorkAttendance(type);
}
if (type == TypeEnum.排班制.getValue()) {
return new ScheduleWorkAttendance(type);
} else {
throw new AppException(String.format("未知的类型码:%s", type));
}*/
// throw new Exception(String.format("未知的类型码:%s", type));
return
null
;
}
public
String
getToken
()
{
try
{
JSONObject
jsonObject
=
new
JSONObject
();
jsonObject
.
put
(
"deviceLogo"
,
"5c:1b:f4:e2"
);
String
rest
=
HttpUtil
.
post
(
url
,
jsonObject
.
toJSONString
());
log
.
info
(
"get token==>>{}"
,
rest
);
}
catch
(
Exception
e
)
{
log
.
error
(
"获取TOKEN异常"
,
e
);
}
return
this
.
token
;
}
public
ComplexWindowAbstract
(
String
type
)
{
this
.
type
=
type
;
}
}
src/main/java/com/lilosoft/api/service/complexWindow/WXHXPJYXKFRBG.java
0 → 100644
View file @
64b13181
package
com.lilosoft.api.service.complexWindow
;
import
cn.hutool.core.util.StrUtil
;
import
cn.hutool.extra.spring.SpringUtil
;
import
cn.hutool.http.HttpUtil
;
import
com.alibaba.fastjson.JSON
;
import
com.lilosoft.api.bean.receive.FileDataItem
;
import
com.lilosoft.complex.Rest
;
import
com.lilosoft.complex.matter.model.req.*
;
import
com.lilosoft.complex.matter.model.rsp.AcceptRspInfo
;
import
com.lilosoft.complex.matter.model.rsp.LoginRspInfo
;
import
com.lilosoft.complex.matter.model.rsp.MatterListInfo
;
import
com.lilosoft.complex.matter.model.rsp.MatterRespInfo
;
import
com.lilosoft.complex.matter.model.rsp.matter.ChildrenItem
;
import
com.lilosoft.complex.matter.model.rsp.matter.MatterWorkInfo
;
import
com.lilosoft.complex.matter.service.IComplexMatterService
;
import
com.lilosoft.core.enums.TypeEnum
;
import
com.lilosoft.core.enums.YesNoEnum
;
import
lombok.extern.slf4j.Slf4j
;
import
okhttp3.ResponseBody
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.util.ObjectUtils
;
import
retrofit2.Response
;
import
java.io.IOException
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.stream.Collectors
;
/**
* 危险化学品经营许可法人变更
*
* @author:
* @date: 2023/7/31 15:15
*/
@Slf4j
public
class
WXHXPJYXKFRBG
extends
ComplexWindowAbstract
{
private
IComplexMatterService
complexMatterService
;
public
static
String
matterName
=
"从事剧毒、易制爆、汽油加油站、专用危化品仓储的企业,中央企业所属省级"
;
public
WXHXPJYXKFRBG
(
String
type
)
{
super
(
type
);
this
.
complexMatterService
=
SpringUtil
.
getBean
(
IComplexMatterService
.
class
);
}
@Override
String
getType
()
{
return
TypeEnum
.
危险化学品经营许可法人变更
.
getValue
();
}
@Override
public
void
doHandleWork
(
CommonData
commonData
)
{
//获取数据资源 todo
//下载附件
List
<
FileDataItem
>
fileCollect
=
commonData
.
getFileData
().
stream
().
map
(
item
->
{
FileDataItem
fileDataItem
=
new
FileDataItem
();
BeanUtils
.
copyProperties
(
item
,
fileDataItem
);
String
downloadPath
=
commonData
.
getRobertServerUrl
()
+
item
.
getFileUrl
();
byte
[]
bytes
=
HttpUtil
.
downloadBytes
(
downloadPath
);
fileDataItem
.
setBytes
(
bytes
);
return
fileDataItem
;
}).
collect
(
Collectors
.
toList
());
//通过名称查询
DeviceLoginReq
deviceLoginReq
=
new
DeviceLoginReq
();
deviceLoginReq
.
setDeviceLogo
(
commonData
.
getDeviceLogo
());
Rest
<
LoginRspInfo
>
loginRspInfoRest
=
complexMatterService
.
deviceLogin
(
deviceLoginReq
);
if
(
loginRspInfoRest
.
getCode
()
==
YesNoEnum
.
YES
.
getValue
())
{
//设备登录成功 上传附件
fileCollect
.
stream
().
forEach
(
item
->
{
Rest
<
String
>
uploadFileRest
=
complexMatterService
.
uploadFile
(
commonData
.
getDeviceLogo
(),
item
.
getBytes
(),
item
.
getFileName
());
if
(
uploadFileRest
.
getCode
()
==
YesNoEnum
.
YES
.
getValue
())
{
item
.
setDownloadUrl
(
uploadFileRest
.
getData
());
}
});
//通过事项查询eventId
ImplementationReq
implementationReq
=
new
ImplementationReq
();
implementationReq
.
setImplementName
(
matterName
);
Rest
<
MatterListInfo
>
matterRest
=
complexMatterService
.
findMatters
(
commonData
.
getDeviceLogo
(),
implementationReq
);
if
(
matterRest
.
getCode
()
==
YesNoEnum
.
YES
.
getValue
())
{
List
<
MatterRespInfo
>
matterListInfos
=
matterRest
.
getData
().
getRecords
();
if
(!
ObjectUtils
.
isEmpty
(
matterListInfos
))
{
MatterRespInfo
matterRespInfo
=
matterListInfos
.
get
(
0
);
String
eventId
=
matterRespInfo
.
getEventId
();
String
eventObjectType
=
matterRespInfo
.
getEventObjectType
();
//查询办理事项情形
Rest
<
MatterWorkInfo
>
matterWorkInfoRest
=
complexMatterService
.
doWorkMatterSearch
(
commonData
.
getDeviceLogo
(),
eventId
);
if
(
matterWorkInfoRest
.
getCode
()
==
YesNoEnum
.
YES
.
getValue
())
{
MatterWorkInfo
matterWorkInfo
=
matterWorkInfoRest
.
getData
();
ChildrenItem
childrenItem
=
matterWorkInfo
.
getChildren
().
stream
().
filter
(
f
->
"变更法人"
.
equals
(
f
.
getLabel
())).
findFirst
().
orElseGet
(()
->
null
);
if
(!
ObjectUtils
.
isEmpty
(
childrenItem
))
{
MaterialsItem
materialsItem
=
new
MaterialsItem
();
//构建受理材料附件
List
<
MaterialsItem
>
materialsItemList
=
childrenItem
.
getMaterials
().
stream
().
map
(
item
->
{
String
name
=
item
.
getName
();
if
(
StrUtil
.
contains
(
name
,
"变更申请表"
))
{
matchUploadFile
(
fileCollect
,
materialsItem
,
"申请书"
);
}
else
if
(
StrUtil
.
contains
(
name
,
"安全资格证书"
)){
matchUploadFile
(
fileCollect
,
materialsItem
,
"合格证"
);
}
else
if
(
StrUtil
.
contains
(
name
,
"化学品经营许可证"
)){
matchUploadFile
(
fileCollect
,
materialsItem
,
"许可证"
);
}
materialsItem
.
setMaterialForm
(
item
.
getFromId
());
materialsItem
.
setMaterialId
(
item
.
getId
());
return
materialsItem
;
}).
collect
(
Collectors
.
toList
());
}
}
//提交响应的受理
AcceptReq
acceptReq
=
new
AcceptReq
();
List
<
HandlingsItem
>
handlingsItemList
=
new
ArrayList
<>();
HandlingsItem
handlingsItem
=
new
HandlingsItem
();
handlingsItem
.
setEventId
(
eventId
);
handlingsItem
.
setObjectType
(
eventObjectType
);
handlingsItemList
.
add
(
handlingsItem
);
acceptReq
.
setHandlings
(
handlingsItemList
);
Rest
<
AcceptRspInfo
>
acceptRest
=
complexMatterService
.
accept
(
commonData
.
getDeviceLogo
(),
acceptReq
);
if
(
acceptRest
.
getCode
()
==
YesNoEnum
.
YES
.
getValue
())
{
log
.
info
(
"受理成功==>{}"
,
JSON
.
toJSONString
(
acceptRest
));
}
}
}
}
}
private
static
void
matchUploadFile
(
List
<
FileDataItem
>
fileCollect
,
MaterialsItem
materialsItem
,
String
fileName
)
{
FileDataItem
fileDataItem
=
fileCollect
.
stream
().
filter
(
f
->
StrUtil
.
contains
(
f
.
getFileName
(),
fileName
)).
findFirst
().
orElseGet
(()
->
null
);
if
(!
ObjectUtils
.
isEmpty
(
fileDataItem
)){
materialsItem
.
setUploadFileName
(
fileDataItem
.
getFileName
());
materialsItem
.
setMaterialPath
(
fileDataItem
.
getDownloadUrl
());
}
}
}
src/main/java/com/lilosoft/complex/AbstractComplexService.java
0 → 100644
View file @
64b13181
package
com.lilosoft.complex
;
import
com.lilosoft.complex.matter.model.req.DeviceLoginReq
;
import
com.lilosoft.complex.matter.model.rsp.LoginRspInfo
;
import
com.lilosoft.complex.matter.service.IComplexMatterService
;
import
com.lilosoft.core.exception.AppException
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.util.ObjectUtils
;
import
java.util.Map
;
@Slf4j
public
abstract
class
AbstractComplexService
implements
IComplexMatterService
{
//综窗访问地址
@Value
(
"${complex.host:}"
)
protected
String
host
;
//综窗设备编码 多个逗号分割
@Value
(
"${complex.deviceCode:''}"
)
protected
String
deviceCode
;
@Value
(
"${hik.appSecret:''}"
)
protected
String
appSecret
;
//综窗接件token deviceCode--对应tokenMap
public
Map
<
String
,
String
>
tokenMap
;
//综窗接件token
public
String
token
;
@Override
public
String
getToken
(
String
deviceLogo
)
{
try
{
String
deviceToken
=
tokenMap
.
getOrDefault
(
deviceLogo
,
""
);
if
(
ObjectUtils
.
isEmpty
(
deviceToken
))
{
DeviceLoginReq
loginReq
=
new
DeviceLoginReq
();
loginReq
.
setDeviceLogo
(
deviceLogo
);
Rest
<
LoginRspInfo
>
loginRspInfoRest
=
this
.
deviceLogin
(
loginReq
);
return
loginRspInfoRest
.
getData
().
getToken
();
}
else
{
return
deviceToken
;
}
}
catch
(
Exception
e
)
{
log
.
error
(
"获取TOKEN异常"
,
e
);
throw
new
AppException
(
e
.
getMessage
());
}
}
}
src/main/java/com/lilosoft/complex/BaseReq.java
0 → 100644
View file @
64b13181
package
com.lilosoft.complex
;
import
lombok.Data
;
/**
* 海康请求基础类
* @author:
* @date: 2023/4/12 17:57
*/
@Data
public
class
BaseReq
{
}
src/main/java/com/lilosoft/complex/ComplexApiRest.java
0 → 100644
View file @
64b13181
package
com.lilosoft.complex
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONPObject
;
import
com.alibaba.fastjson.TypeReference
;
import
com.lilosoft.complex.matter.model.rsp.LoginRspInfo
;
import
com.lilosoft.core.utils.Json
;
import
lombok.Data
;
@Data
public
class
ComplexApiRest
<
T
>
{
private
T
result
;
private
Integer
code
;
private
String
message
;
private
Boolean
success
;
private
Long
timestamp
;
public
static
void
main
(
String
[]
args
)
{
String
str
=
"{\n"
+
" \"success\": true,\n"
+
" \"message\": \"操作成功!\",\n"
+
" \"code\": 200,\n"
+
" \"result\": {\n"
+
" \"token\": \"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyTnVtIjoiZ29uZ2ppIiwic2VsZkRldmljZUlkIjoiNiIsImhhbmRsZUFkZHJlc3NJZCI6IjE0OTk2NTA0ODgyMzEwNzE3NDYiLCJleHAiOjE2OTUyMjk5MTksInVzZXJJZCI6IjExMTIiLCJ3aW5kb3dJZCI6IjE0OTk2NTA1NTM0MTA1NTU5MDYifQ.ADZQR8AIo8OHtuUJBskBx3w2yaqHHsQLMSBamYvf6YE\",\n"
+
" \"sysUser\": {\n"
+
" \"createBy\": 1,\n"
+
" \"createTime\": \"2021-08-16 16:38:17\",\n"
+
" \"updateBy\": null,\n"
+
" \"updateTime\": \"2023-08-12 10:40:34\",\n"
+
" \"delFlag\": \"N\",\n"
+
" \"userId\": 1112,\n"
+
" \"userName\": \"万青青\",\n"
+
" \"sex\": \"男\",\n"
+
" \"loginName\": null,\n"
+
" \"userNumber\": \"gongji\",\n"
+
" \"dept\": null,\n"
+
" \"deptId\": 306,\n"
+
" \"email\": \"56462@qq.com\",\n"
+
" \"address\": null,\n"
+
" \"idCard\": \"522121199208022252\",\n"
+
" \"phoneNumber\": \"18888888888\",\n"
+
" \"workPhone\": \"17778445521\",\n"
+
" \"avatar\": \"/mnt/jpg/2023-08-12/3bf75fd4301da7469c83e8e35e233c65.jpg\",\n"
+
" \"startNumber\": null,\n"
+
" \"userType\": null,\n"
+
" \"password\": \"632a02caecc0bb7b\",\n"
+
" \"passwordState\": \"Y\",\n"
+
" \"salt\": \"ZGimxeDr\",\n"
+
" \"status\": \"Y\",\n"
+
" \"remark\": \"\",\n"
+
" \"areaCode\": \"510100000000\",\n"
+
" \"hometown\": null,\n"
+
" \"windowId\": null,\n"
+
" \"centerUserId\": \"123456789\",\n"
+
" \"value\": null,\n"
+
" \"label\": null,\n"
+
" \"dkUserId\": null,\n"
+
" \"dkUnionId\": null,\n"
+
" \"changePwTime\": \"2023-08-25 10:03:46\",\n"
+
" \"sysRole\": null,\n"
+
" \"isWaiter\": \"N\"\n"
+
" },\n"
+
" \"selfDeviceInfo\": {\n"
+
" \"selfDeviceId\": \"6\",\n"
+
" \"deviceLogo\": \"uutest\",\n"
+
" \"note\": \"张远海\",\n"
+
" \"userId\": \"1112\",\n"
+
" \"windowId\": \"1499650553410555906\",\n"
+
" \"createBy\": \"1\",\n"
+
" \"createTime\": \"2023-08-25 15:11:41\",\n"
+
" \"updateBy\": null,\n"
+
" \"updateTime\": null,\n"
+
" \"delFlag\": \"N\",\n"
+
" \"coordinate\": \"104.090953,30.767351\",\n"
+
" \"ticketTitle\": null,\n"
+
" \"tips\": null,\n"
+
" \"workHours\": null,\n"
+
" \"telephone\": \"9528\",\n"
+
" \"floorId\": \"1499650525505851393\",\n"
+
" \"handleAddressId\": \"1499650488231071746\"\n"
+
" }\n"
+
" },\n"
+
" \"timestamp\": 1695193919663\n"
+
"}\n"
;
ComplexApiRest
<
LoginRspInfo
>
loginRspInfoComplexApiRest
=
JSON
.
parseObject
(
str
,
new
TypeReference
<
ComplexApiRest
<
LoginRspInfo
>>()
{
});
System
.
out
.
println
(
JSON
.
toJSONString
(
loginRspInfoComplexApiRest
));
}
}
src/main/java/com/lilosoft/complex/IComplexService.java
0 → 100644
View file @
64b13181
package
com.lilosoft.complex
;
/**
* 综窗基础接口类
* @author: zxfei
* @date: 2023/10/31 11:36
*/
public
interface
IComplexService
{
String
getToken
(
String
deviceLogo
);
}
src/main/java/com/lilosoft/complex/Rest.java
0 → 100644
View file @
64b13181
package
com.lilosoft.complex
;
public
class
Rest
<
T
>
{
/**
* 成功
*/
public
static
final
int
SUCCESS
=
1
;
/**
* 失败
*/
public
static
final
int
FAIL
=
-
1
;
private
T
data
;
private
Integer
code
;
private
String
msg
;
private
Object
dict
;
public
T
getData
()
{
return
data
;
}
public
void
setData
(
T
data
)
{
this
.
data
=
data
;
}
public
Integer
getCode
()
{
return
code
;
}
public
void
setCode
(
Integer
code
)
{
this
.
code
=
code
;
}
public
String
getMsg
()
{
return
msg
;
}
public
void
setMsg
(
String
msg
)
{
this
.
msg
=
msg
;
}
public
Object
getDict
()
{
return
dict
;
}
public
void
setDict
(
Object
dict
)
{
this
.
dict
=
dict
;
}
public
static
<
T
>
Rest
<
T
>
ok
()
{
return
restResult
(
null
,
SUCCESS
,
"操作成功"
);
}
public
static
<
T
>
Rest
<
T
>
ok
(
T
data
)
{
return
restResult
(
data
,
SUCCESS
,
"操作成功"
);
}
public
static
<
T
>
Rest
<
T
>
ok
(
String
msg
)
{
return
restResult
(
null
,
SUCCESS
,
msg
);
}
public
static
<
T
>
Rest
<
T
>
ok
(
String
msg
,
T
data
)
{
return
restResult
(
data
,
SUCCESS
,
msg
);
}
public
static
<
T
>
Rest
<
T
>
fail
()
{
return
restResult
(
null
,
FAIL
,
"操作失败"
);
}
public
static
<
T
>
Rest
<
T
>
fail
(
String
msg
)
{
return
restResult
(
null
,
FAIL
,
msg
);
}
public
static
<
T
>
Rest
<
T
>
fail
(
T
data
)
{
return
restResult
(
data
,
FAIL
,
"操作失败"
);
}
public
static
<
T
>
Rest
<
T
>
fail
(
String
msg
,
T
data
)
{
return
restResult
(
data
,
FAIL
,
msg
);
}
public
static
<
T
>
Rest
<
T
>
fail
(
int
code
,
String
msg
)
{
return
restResult
(
null
,
code
,
msg
);
}
private
static
<
T
>
Rest
<
T
>
restResult
(
T
data
,
int
code
,
String
msg
)
{
Rest
<
T
>
rest
=
new
Rest
<>();
rest
.
setCode
(
code
);
rest
.
setData
(
data
);
rest
.
setMsg
(
msg
);
return
rest
;
}
}
src/main/java/com/lilosoft/complex/matter/model/req/AcceptReq.java
0 → 100644
View file @
64b13181
package
com.lilosoft.complex.matter.model.req
;
import
java.util.List
;
import
lombok.Data
;
@Data
public
class
AcceptReq
{
private
ApplicantLeagal
applicantLegal
;
private
Object
agency
;
private
List
<
String
>
itemsIds
;
private
List
<
MaterialsItem
>
materials
;
private
String
isStaging
;
private
ApplicantPersonal
applicantPersonal
;
private
List
<
HandlingsItem
>
handlings
;
private
InfoMap
infoMap
;
private
Object
legalProxy
;
private
Object
thingId
;
}
\ No newline at end of file
src/main/java/com/lilosoft/complex/matter/model/req/ApplicantLeagal.java
0 → 100644
View file @
64b13181
package
com.lilosoft.complex.matter.model.req
;
import
lombok.Data
;
@Data
public
class
ApplicantLeagal
{
private
String
phone
;
private
String
applicantSex
;
private
String
documentId
;
private
String
applicantName
;
private
String
applicantIdNumber
;
}
\ No newline at end of file
src/main/java/com/lilosoft/complex/matter/model/req/ApplicantPersonal.java
0 → 100644
View file @
64b13181
package
com.lilosoft.complex.matter.model.req
;
import
lombok.Data
;
@Data
public
class
ApplicantPersonal
{
private
String
phone
;
private
String
applicantSex
;
private
String
documentId
;
private
String
applicantName
;
private
String
applicantIdNumber
;
}
\ No newline at end of file
src/main/java/com/lilosoft/complex/matter/model/req/DeviceLoginReq.java
0 → 100644
View file @
64b13181
package
com.lilosoft.complex.matter.model.req
;
import
lombok.Data
;
@Data
public
class
DeviceLoginReq
{
private
String
deviceLogo
;
}
\ No newline at end of file
src/main/java/com/lilosoft/complex/matter/model/req/HandlingsItem.java
0 → 100644
View file @
64b13181
package
com.lilosoft.complex.matter.model.req
;
import
lombok.Data
;
@Data
public
class
HandlingsItem
{
private
String
eventId
;
private
String
objectType
;
}
\ No newline at end of file
src/main/java/com/lilosoft/complex/matter/model/req/ImplementationReq.java
0 → 100644
View file @
64b13181
package
com.lilosoft.complex.matter.model.req
;
import
lombok.Data
;
/**
* 事项查询
*
* @author: zxfei
* @date: 2023/10/30 16:50
*/
@Data
public
class
ImplementationReq
{
private
Integer
currentPage
;
private
Integer
pageSize
;
private
String
eventObjectType
;
private
String
crossFlag
;
private
String
implementName
;
}
src/main/java/com/lilosoft/complex/matter/model/req/InfoMap.java
0 → 100644
View file @
64b13181
package
com.lilosoft.complex.matter.model.req
;
import
lombok.Data
;
@Data
public
class
InfoMap
{
private
String
sjrdz
;
private
String
rqkdata
;
}
\ No newline at end of file
src/main/java/com/lilosoft/complex/matter/model/req/MaterialsItem.java
0 → 100644
View file @
64b13181
package
com.lilosoft.complex.matter.model.req
;
import
lombok.Data
;
@Data
public
class
MaterialsItem
{
private
String
uploadFileName
;
private
String
materialForm
;
private
String
materialPath
;
private
String
materialId
;
}
\ No newline at end of file
src/main/java/com/lilosoft/complex/matter/model/req/MatterReq.java
0 → 100644
View file @
64b13181
package
com.lilosoft.complex.matter.model.req
;
import
lombok.Data
;
@Data
public
class
MatterReq
{
//事件id
private
String
eventIds
;
}
src/main/java/com/lilosoft/complex/matter/model/req/UploadFileReq.java
0 → 100644
View file @
64b13181
package
com.lilosoft.complex.matter.model.req
;
import
lombok.Data
;
import
java.io.File
;
@Data
public
class
UploadFileReq
{
private
String
conversionImage
=
"Y"
;
private
File
file
;
}
\ No newline at end of file
src/main/java/com/lilosoft/complex/matter/model/rsp/AcceptRspInfo.java
0 → 100644
View file @
64b13181
package
com.lilosoft.complex.matter.model.rsp
;
import
java.util.List
;
import
lombok.Data
;
@Data
public
class
AcceptRspInfo
{
private
Object
handler
;
private
Object
deptName
;
private
Object
btsName
;
private
String
handleAddressId
;
private
String
isOneThing
;
private
Object
cycleAndSteps
;
private
Object
endDate
;
private
Object
functionRole
;
private
Object
printCorrectionReceipt
;
private
Object
handleDeptName
;
private
Object
createUserName
;
private
Object
handlerName
;
private
List
<
Object
>
areas
;
private
String
acceptAreaCode
;
private
Object
tokenUser
;
private
Object
businessTacheName
;
private
Object
floorId
;
private
String
implementName
;
private
Object
stateName
;
private
Object
areaName
;
private
String
acceptObjectType
;
private
boolean
orderByLimitTime
;
private
String
isTongBan
;
private
String
state
;
private
String
applicantId
;
private
String
unifyCode
;
private
Object
deptId
;
private
Object
isIssue
;
private
Object
suspendSecond
;
private
Object
eventType
;
private
Object
packages
;
private
Object
waitHandlingSearch
;
private
Object
replyPrintLicence
;
private
Object
eventIds
;
private
Object
applicantIdNumber
;
private
Object
extend
;
private
Object
itemId
;
private
Object
registerAddress
;
private
Object
hotNum
;
private
String
phone
;
private
String
sourceType
;
private
Object
handlingIds
;
private
String
doSource
;
private
Object
infoMap
;
private
Object
applyCode
;
private
Object
situationItems
;
private
int
btsOrder
;
private
String
startDate
;
private
Object
printNoAccept
;
private
Object
timeLimitState
;
private
String
businessTacheId
;
private
String
submitType
;
private
Object
btsIds
;
private
Object
eventIdAndTacheIds
;
private
Object
timingStartTime
;
private
String
acceptIsPrint
;
private
Object
thingHandlingId
;
private
Object
conditionTime
;
private
Object
situationId
;
private
Object
stepResult
;
private
Object
printFinishBook
;
private
String
delFlag
;
private
Object
auditState
;
private
Object
search
;
private
Object
rightsDeptName
;
private
Object
commAddress
;
private
Object
handlerPhone
;
private
String
isDissolve
;
private
String
handlingId
;
private
Object
situations
;
private
Object
printUpload
;
private
Object
printAccept
;
private
Object
updateTime
;
private
String
currentArea
;
private
String
userId
;
private
Object
applicant
;
private
Object
thingId
;
private
String
legalPersonId
;
private
Object
dealAreaCode
;
private
Object
rightsDeptId
;
private
String
createTime
;
private
String
ecId
;
private
String
handlingCode
;
private
Object
situationItemIds
;
private
Object
eventTypeName
;
private
Object
warningTimeAll
;
private
int
num
;
private
String
implementCoding
;
private
Object
acceptDeptName
;
private
Object
limitDay
;
private
String
businessTacheCode
;
private
Object
selectSituationItems
;
private
String
eventObjectType
;
private
Object
handlingUseTime
;
private
Object
situationIds
;
private
int
handlingVersion
;
private
Object
processName
;
private
Object
windowName
;
private
Object
deptIds
;
private
Object
dealAreaName
;
private
String
endIsPrint
;
private
String
eventId
;
private
Object
acceptDeptId
;
private
HandleAddress
handleAddress
;
private
String
applicantName
;
private
Object
printLicence
;
private
Object
acceptAreaName
;
private
Object
eventHandleKind
;
private
String
windowId
;
private
Object
areaCode
;
private
Object
materials
;
private
Object
windowUserId
;
private
Object
timingEndTime
;
private
Object
ecName
;
private
Object
areaLinkCode
;
private
Object
beyondTime
;
private
Object
note
;
private
List
<
Object
>
areaLinks
;
private
Object
auditAreaCode
;
private
String
btsId
;
private
Object
cycleAndStep
;
private
Object
stepId
;
private
Object
tenantCode
;
private
Object
states
;
private
Object
tenantName
;
private
Object
updateBy
;
private
String
handlerId
;
private
Object
legalPerson
;
private
Object
eventImplementation
;
private
Object
warningTime
;
private
Object
areaOrder
;
private
Object
eventIdAndTacheId
;
private
Object
handleDept
;
private
String
resultsHandlingType
;
private
Object
isStaging
;
private
Object
thingName
;
private
Object
printDocument
;
private
Object
userName
;
private
Object
timeLimit
;
private
Object
areaCodeList
;
private
Object
oneThingExampleId
;
private
String
createBy
;
private
Object
systemCode
;
private
Object
beyondTimeAll
;
private
Object
isTimeout
;
private
Object
bjlx
;
}
\ No newline at end of file
src/main/java/com/lilosoft/complex/matter/model/rsp/HandleAddress.java
0 → 100644
View file @
64b13181
package
com.lilosoft.complex.matter.model.rsp
;
import
java.util.List
;
import
lombok.Data
;
@Data
public
class
HandleAddress
{
private
String
handleAddressDetail
;
private
int
isCenter
;
private
List
<
String
>
callNotification
;
private
Object
eventId
;
private
String
handleAddressId
;
private
int
distance
;
private
double
latitude
;
private
int
userId
;
private
String
areaCode
;
private
String
queueNumberRule
;
private
String
areaName
;
private
String
areaLevel
;
private
String
state
;
private
String
stateDate
;
private
int
timeCost
;
private
int
kilometre
;
private
String
queuingRules
;
private
double
longitude
;
}
\ No newline at end of file
src/main/java/com/lilosoft/complex/matter/model/rsp/LoginRspInfo.java
0 → 100644
View file @
64b13181
package
com.lilosoft.complex.matter.model.rsp
;
import
lombok.Data
;
@Data
public
class
LoginRspInfo
{
private
SelfDeviceInfo
selfDeviceInfo
;
private
SysUser
sysUser
;
private
String
token
;
}
\ No newline at end of file
src/main/java/com/lilosoft/complex/matter/model/rsp/MatterListInfo.java
0 → 100644
View file @
64b13181
package
com.lilosoft.complex.matter.model.rsp
;
import
lombok.Data
;
import
java.util.List
;
@Data
public
class
MatterListInfo
{
private
List
<
MatterRespInfo
>
records
;
}
src/main/java/com/lilosoft/complex/matter/model/rsp/MatterRespInfo.java
0 → 100644
View file @
64b13181
package
com.lilosoft.complex.matter.model.rsp
;
import
lombok.Data
;
@Data
public
class
MatterRespInfo
{
private
Object
factSheet
;
private
Object
sourceId
;
private
String
deptName
;
private
Object
endDate
;
private
String
onlineReservation
;
private
Object
afternoonStartTime
;
private
String
implementCoding
;
private
Object
runNumbers
;
private
String
typeIdFr
;
private
String
eventObjectType
;
private
String
crossFlag
;
private
String
selfServiceTerminals
;
private
Object
dfjha
;
private
String
implementName
;
private
Object
electronicSealPath
;
private
Object
classificationDfZrr
;
private
String
depthId
;
private
Object
afternoonEndTime
;
private
String
state
;
private
String
handlingItemCode
;
private
String
logisticeExpress
;
private
Object
limitNum
;
private
String
eventId
;
private
int
useId
;
private
Object
legalLimitTime
;
private
int
deptId
;
private
String
eventType
;
private
String
eventHandleKind
;
private
Object
extend
;
private
Object
contrastRatio
;
private
Object
xsfs
;
private
String
typeIdZrr
;
private
String
areaCode
;
private
Object
hotNum
;
private
Object
thingEventId
;
private
Object
promiseLimitTime
;
private
Object
sourceType
;
private
Object
classificationDfFr
;
private
String
eventHandleKindDesc
;
private
Object
formData
;
private
Object
checkInExplanation
;
private
Object
accessGrant
;
private
Object
startDate
;
private
Object
dfjhaType
;
private
Object
integrationMatterName
;
private
Object
integrationInputName
;
private
Object
includeIntegration
;
private
Object
remark
;
private
Object
thingSituation
;
private
Object
delFlag
;
private
Object
morningEndTime
;
private
Object
isApproval
;
private
Object
localAndIntegrationIdentical
;
private
Object
fullOnlineHandle
;
private
int
businessFlowId
;
private
String
parentEventId
;
private
Object
assHandle
;
private
String
onlinePayment
;
private
Object
requestType
;
private
String
resultsHandlingType
;
private
String
enterHall
;
private
Object
onlineHandleSystem
;
private
Object
eventTypeDetail
;
private
Object
optionalWeek
;
private
Object
eventCharacterMap
;
private
Object
morningStartTime
;
private
Object
thingId
;
private
Object
schedulingRules
;
private
Object
specifyTime
;
private
Object
checkIn
;
private
String
ecId
;
private
Object
eventTypeName
;
private
String
networkOffice
;
private
Object
settledFilePath
;
private
String
bjlx
;
private
String
stateDate
;
private
Object
unitOfLimitTime
;
private
Object
resultsDefines
;
}
\ No newline at end of file
src/main/java/com/lilosoft/complex/matter/model/rsp/SelfDeviceInfo.java
0 → 100644
View file @
64b13181
package
com.lilosoft.complex.matter.model.rsp
;
import
lombok.Data
;
@Data
public
class
SelfDeviceInfo
{
private
String
note
;
private
Object
ticketTitle
;
private
String
selfDeviceId
;
private
String
handleAddressId
;
private
String
coordinate
;
private
Object
workHours
;
private
Object
updateTime
;
private
String
telephone
;
private
String
delFlag
;
private
String
deviceLogo
;
private
String
userId
;
private
Object
tips
;
private
String
windowId
;
private
String
floorId
;
private
String
createBy
;
private
String
createTime
;
private
Object
updateBy
;
}
\ No newline at end of file
src/main/java/com/lilosoft/complex/matter/model/rsp/SysUser.java
0 → 100644
View file @
64b13181
package
com.lilosoft.complex.matter.model.rsp
;
import
lombok.Data
;
@Data
public
class
SysUser
{
private
Object
sysRole
;
private
Object
startNumber
;
private
String
idCard
;
private
String
remark
;
private
String
delFlag
;
private
String
centerUserId
;
private
String
password
;
private
Object
updateBy
;
private
Object
loginName
;
private
String
userNumber
;
private
Object
value
;
private
String
email
;
private
Object
hometown
;
private
Object
address
;
private
String
salt
;
private
String
sex
;
private
int
deptId
;
private
String
updateTime
;
private
String
isWaiter
;
private
Object
dept
;
private
String
avatar
;
private
Object
label
;
private
String
userName
;
private
int
userId
;
private
Object
dkUserId
;
private
Object
windowId
;
private
int
createBy
;
private
String
areaCode
;
private
String
phoneNumber
;
private
String
createTime
;
private
String
passwordState
;
private
Object
dkUnionId
;
private
String
changePwTime
;
private
String
workPhone
;
private
Object
userType
;
private
String
status
;
}
\ No newline at end of file
src/main/java/com/lilosoft/complex/matter/model/rsp/matter/ChildrenItem.java
0 → 100644
View file @
64b13181
package
com.lilosoft.complex.matter.model.rsp.matter
;
import
java.util.List
;
import
lombok.Data
;
@Data
public
class
ChildrenItem
{
private
String
situationItemId
;
private
List
<
MaterialsItem
>
materials
;
private
String
situationDefineId
;
private
String
situationItemName
;
private
String
label
;
private
String
id
;
private
String
situationItemType
;
private
String
type
;
private
String
parentId
;
private
String
key
;
}
\ No newline at end of file
src/main/java/com/lilosoft/complex/matter/model/rsp/matter/MaterialsItem.java
0 → 100644
View file @
64b13181
package
com.lilosoft.complex.matter.model.rsp.matter
;
import
lombok.Data
;
@Data
public
class
MaterialsItem
{
private
String
name
;
private
String
pid
;
private
int
paperCopies
;
private
String
id
;
private
String
label
;
private
String
type
;
private
String
fromId
;
private
String
parentId
;
private
String
key
;
}
\ No newline at end of file
src/main/java/com/lilosoft/complex/matter/model/rsp/matter/MatterWorkInfo.java
0 → 100644
View file @
64b13181
package
com.lilosoft.complex.matter.model.rsp.matter
;
import
java.util.List
;
import
lombok.Data
;
@Data
public
class
MatterWorkInfo
{
private
List
<
ChildrenItem
>
children
;
private
String
name
;
private
String
id
;
private
String
label
;
private
String
type
;
private
String
key
;
}
\ No newline at end of file
src/main/java/com/lilosoft/complex/matter/model/rsp/work/WorkInfo.java
0 → 100644
View file @
64b13181
package
com.lilosoft.complex.matter.model.rsp.work
;
import
java.util.List
;
import
lombok.Data
;
@Data
public
class
WorkInfo
{
private
String
fieldGenerateRules
;
private
String
commonCharacterName
;
private
Object
defaultValue
;
private
String
hcFillRule
;
private
String
defaultValueRules
;
private
Object
xpath
;
private
Object
regularName
;
private
String
handlingCharacterPackage
;
private
int
hcOrder
;
private
int
elCol
;
private
String
state
;
private
Object
commonCharacterComment
;
private
Object
parentValue
;
private
String
commonCharacterCode
;
private
String
commonCharacterId
;
private
String
commonCharacterType
;
private
int
userId
;
private
String
assType
;
private
Object
parentId
;
private
String
regularId
;
private
String
tacheStep
;
private
Object
checkTrictly
;
private
String
handlingCharacterTemplateId
;
private
Object
parentMovement
;
private
Object
regularVal
;
private
String
allowModify
;
private
String
stateDate
;
private
int
commonCharacterLength
;
private
List
<
Object
>
items
;
private
String
dataInterfaceType
;
}
\ No newline at end of file
src/main/java/com/lilosoft/complex/matter/service/IComplexMatterService.java
0 → 100644
View file @
64b13181
package
com.lilosoft.complex.matter.service
;
import
com.lilosoft.complex.IComplexService
;
import
com.lilosoft.complex.Rest
;
import
com.lilosoft.complex.matter.model.req.AcceptReq
;
import
com.lilosoft.complex.matter.model.req.ImplementationReq
;
import
com.lilosoft.complex.matter.model.req.DeviceLoginReq
;
import
com.lilosoft.complex.matter.model.rsp.AcceptRspInfo
;
import
com.lilosoft.complex.matter.model.rsp.LoginRspInfo
;
import
com.lilosoft.complex.matter.model.rsp.MatterListInfo
;
import
com.lilosoft.complex.matter.model.rsp.MatterRespInfo
;
import
com.lilosoft.complex.matter.model.rsp.matter.MatterWorkInfo
;
import
com.lilosoft.complex.matter.model.rsp.work.WorkInfo
;
import
java.util.List
;
/**
* 综合窗口业务处理类
*
* @author: zxfei
* @date: 2023/10/30 14:52
*/
public
interface
IComplexMatterService
extends
IComplexService
{
/**
* 自助设备登录
*
* @param deviceLoginReq
* @return
*/
Rest
<
LoginRspInfo
>
deviceLogin
(
DeviceLoginReq
deviceLoginReq
);
/**
* 附件上传
*
* @param bytes
* @param fileName
* @return
*/
Rest
<
String
>
uploadFile
(
String
deviceLogo
,
byte
[]
bytes
,
String
fileName
);
/**
* 自助设备接件
*
* @param acceptReq
* @return
*/
Rest
<
AcceptRspInfo
>
accept
(
String
deviceLogo
,
AcceptReq
acceptReq
);
/**
* 查询可受理事项
*
* @param implementationReq
* @return
*/
Rest
<
MatterListInfo
>
findMatters
(
String
deviceLogo
,
ImplementationReq
implementationReq
);
/**
* 查询办理事项情形
*
* @param eventIds
* @return
*/
Rest
<
MatterWorkInfo
>
doWorkMatterSearch
(
String
deviceLogo
,
String
eventIds
);
/**
* 获取办件要素
* @param deviceLogo
* @param eventIds
* @return
*/
Rest
<
WorkInfo
>
getWorkMatter
(
String
deviceLogo
,
String
eventIds
);
}
src/main/java/com/lilosoft/complex/matter/service/impl/ComplexMatterServiceImpl.java
0 → 100644
View file @
64b13181
package
com.lilosoft.complex.matter.service.impl
;
import
cn.hutool.core.bean.BeanUtil
;
import
cn.hutool.http.HttpRequest
;
import
cn.hutool.http.HttpResponse
;
import
cn.hutool.http.HttpUtil
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.TypeReference
;
import
com.lilosoft.complex.AbstractComplexService
;
import
com.lilosoft.complex.ComplexApiRest
;
import
com.lilosoft.complex.Rest
;
import
com.lilosoft.complex.matter.model.req.AcceptReq
;
import
com.lilosoft.complex.matter.model.req.ImplementationReq
;
import
com.lilosoft.complex.matter.model.req.DeviceLoginReq
;
import
com.lilosoft.complex.matter.model.rsp.AcceptRspInfo
;
import
com.lilosoft.complex.matter.model.rsp.LoginRspInfo
;
import
com.lilosoft.complex.matter.model.rsp.MatterListInfo
;
import
com.lilosoft.complex.matter.model.rsp.MatterRespInfo
;
import
com.lilosoft.complex.matter.model.rsp.matter.MatterWorkInfo
;
import
com.lilosoft.complex.matter.model.rsp.work.WorkInfo
;
import
com.lilosoft.complex.matter.service.IComplexMatterService
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.stereotype.Service
;
import
org.springframework.util.ObjectUtils
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
/**
* 综合窗口业务实现类
*
* @author: zxfei
* @date: 2023/10/30 14:53
*/
@Service
(
"complexMatterService"
)
@Slf4j
public
class
ComplexMatterServiceImpl
extends
AbstractComplexService
implements
IComplexMatterService
{
//token有效期 10小时
@Override
public
Rest
<
LoginRspInfo
>
deviceLogin
(
DeviceLoginReq
loginReq
)
{
String
deviceLoginApi
=
host
+
"self-device-info/login"
;
String
rest
=
HttpUtil
.
post
(
deviceLoginApi
,
JSON
.
toJSONString
(
loginReq
));
ComplexApiRest
<
LoginRspInfo
>
complexApiRest
=
JSON
.
parseObject
(
rest
,
new
TypeReference
<
ComplexApiRest
<
LoginRspInfo
>>()
{
});
if
(
complexApiRest
.
getCode
()
==
200
)
{
//更新token
String
deviceLoginToken
=
complexApiRest
.
getResult
().
getToken
();
String
deviceLogo
=
complexApiRest
.
getResult
().
getSelfDeviceInfo
().
getDeviceLogo
();
this
.
tokenMap
.
put
(
deviceLogo
,
deviceLoginToken
);
return
Rest
.
ok
(
complexApiRest
.
getMessage
(),
complexApiRest
.
getResult
());
}
return
Rest
.
fail
(
complexApiRest
.
getMessage
());
}
@Override
public
Rest
<
String
>
uploadFile
(
String
deviceLogo
,
byte
[]
bytes
,
String
fileName
)
{
String
uploadApi
=
host
+
"common/uploadFileToFtp?conversionImage=Y"
;
HttpRequest
request
=
HttpRequest
.
post
(
uploadApi
);
String
deviceToken
=
checkToken
(
deviceLogo
);
request
.
form
(
"file"
,
bytes
,
fileName
);
String
uploadRest
=
request
.
header
(
"X-Access-Token"
,
deviceToken
).
execute
().
body
();
ComplexApiRest
<
String
>
complexApiRest
=
JSON
.
parseObject
(
uploadRest
,
new
TypeReference
<
ComplexApiRest
<
String
>>()
{
});
if
(
complexApiRest
.
getCode
()
==
200
)
{
return
Rest
.
ok
(
complexApiRest
.
getMessage
(),
complexApiRest
.
getResult
());
}
return
Rest
.
fail
(
complexApiRest
.
getMessage
());
}
@Override
public
Rest
<
AcceptRspInfo
>
accept
(
String
deviceLogo
,
AcceptReq
acceptReq
)
{
String
deviceLoginApi
=
host
+
"self-device-info/acceptHandling"
;
String
deviceToken
=
checkToken
(
deviceLogo
);
String
rest
=
HttpUtil
.
createPost
(
deviceLoginApi
)
.
header
(
"X-Access-Token"
,
deviceToken
)
.
body
(
JSON
.
toJSONString
(
acceptReq
))
.
execute
().
body
();
ComplexApiRest
<
AcceptRspInfo
>
complexApiRest
=
JSON
.
parseObject
(
rest
,
new
TypeReference
<
ComplexApiRest
<
AcceptRspInfo
>>()
{
});
if
(
complexApiRest
.
getCode
()
==
200
)
{
return
Rest
.
ok
(
complexApiRest
.
getMessage
(),
complexApiRest
.
getResult
());
}
return
Rest
.
fail
(
complexApiRest
.
getMessage
());
}
@Override
public
Rest
<
MatterListInfo
>
findMatters
(
String
deviceLogo
,
ImplementationReq
implementationReq
)
{
String
mattersApi
=
host
+
"event-implementation/list"
;
Map
<
String
,
String
>
paramMap
=
new
HashMap
<>();
// 将Map中的属性值转为字符串
for
(
Map
.
Entry
<
String
,
Object
>
entry
:
BeanUtil
.
beanToMap
(
implementationReq
,
false
,
true
).
entrySet
())
{
String
key
=
entry
.
getKey
();
Object
value
=
entry
.
getValue
();
String
stringValue
=
String
.
valueOf
(
value
);
paramMap
.
put
(
key
,
stringValue
);
}
String
deviceToken
=
checkToken
(
deviceLogo
);
String
rest
=
HttpUtil
.
createGet
(
mattersApi
)
.
header
(
"X-Access-Token"
,
deviceToken
)
.
headerMap
(
paramMap
,
true
)
.
execute
().
body
();
ComplexApiRest
<
MatterListInfo
>
complexApiRest
=
JSON
.
parseObject
(
rest
,
new
TypeReference
<
ComplexApiRest
<
MatterListInfo
>>()
{
});
if
(
complexApiRest
.
getCode
()
==
200
)
{
return
Rest
.
ok
(
complexApiRest
.
getMessage
(),
complexApiRest
.
getResult
());
}
return
Rest
.
fail
(
complexApiRest
.
getMessage
());
}
@Override
public
Rest
<
MatterWorkInfo
>
doWorkMatterSearch
(
String
deviceLogo
,
String
eventIds
)
{
String
mattersApi
=
host
+
"bus-situation-material/getSituationMaterialTreeByEventIds"
;
Map
<
String
,
String
>
paramMap
=
new
HashMap
<>();
paramMap
.
put
(
"eventIds"
,
eventIds
);
String
deviceToken
=
checkToken
(
deviceLogo
);
String
rest
=
HttpUtil
.
createGet
(
mattersApi
)
.
header
(
"X-Access-Token"
,
deviceToken
)
.
headerMap
(
paramMap
,
true
)
.
execute
().
body
();
ComplexApiRest
<
MatterWorkInfo
>
complexApiRest
=
JSON
.
parseObject
(
rest
,
new
TypeReference
<
ComplexApiRest
<
MatterWorkInfo
>>()
{
});
if
(
complexApiRest
.
getCode
()
==
200
)
{
return
Rest
.
ok
(
complexApiRest
.
getMessage
(),
complexApiRest
.
getResult
());
}
return
Rest
.
fail
(
complexApiRest
.
getMessage
());
}
@Override
public
Rest
<
WorkInfo
>
getWorkMatter
(
String
deviceLogo
,
String
eventIds
)
{
String
mattersApi
=
host
+
"event-implementation/getDynamicFormByEventIds"
;
ArrayList
<
String
>
list
=
new
ArrayList
<>();
list
.
add
(
eventIds
);
String
deviceToken
=
checkToken
(
deviceLogo
);
String
rest
=
HttpUtil
.
createPost
(
mattersApi
)
.
header
(
"X-Access-Token"
,
deviceToken
)
.
body
(
JSON
.
toJSONString
(
list
))
.
execute
().
body
();
ComplexApiRest
<
WorkInfo
>
complexApiRest
=
JSON
.
parseObject
(
rest
,
new
TypeReference
<
ComplexApiRest
<
WorkInfo
>>()
{
});
if
(
complexApiRest
.
getCode
()
==
200
)
{
return
Rest
.
ok
(
complexApiRest
.
getMessage
(),
complexApiRest
.
getResult
());
}
return
Rest
.
fail
(
complexApiRest
.
getMessage
());
}
private
String
checkToken
(
String
deviceLogo
)
{
String
deviceToken
=
tokenMap
.
getOrDefault
(
deviceLogo
,
""
);
if
(
ObjectUtils
.
isEmpty
(
deviceToken
))
{
deviceToken
=
getToken
(
deviceLogo
);
}
return
deviceToken
;
}
public
static
void
main
(
String
[]
args
)
{
// Define the URL where you want to upload the file
String
uploadUrl
=
"http://example.com/upload"
;
// Define the path of the file you want to upload
String
filePath
=
"/path/to/your/file.txt"
;
byte
[]
bytes
=
"111"
.
getBytes
();
// Create an HTTP request
HttpRequest
request
=
HttpRequest
.
post
(
uploadUrl
);
// Attach the file to the request
request
.
form
(
"file"
,
bytes
,
"1.png"
);
// Send the request and get the response
HttpResponse
response
=
request
.
execute
();
String
body
=
request
.
execute
().
body
();
// Check the response status
int
status
=
response
.
getStatus
();
if
(
status
==
200
)
{
System
.
out
.
println
(
"File uploaded successfully!"
);
}
else
{
System
.
out
.
println
(
"File upload failed. Status code: "
+
status
);
}
}
}
src/main/java/com/lilosoft/core/enums/TypeEnum.java
0 → 100644
View file @
64b13181
package
com.lilosoft.core.enums
;
import
java.util.LinkedHashMap
;
import
java.util.Map
;
/**
* 综窗事项处理类
*
* @author zxfei
*/
public
enum
TypeEnum
{
危险化学品经营许可法人变更
(
"wxhxpjyxkfrbg20231007"
,
"危险化学品经营许可法人变更"
),
;
private
String
value
;
private
String
desc
;
TypeEnum
(
String
value
,
String
desc
)
{
this
.
value
=
value
;
this
.
desc
=
desc
;
}
public
String
getValue
()
{
return
this
.
value
;
}
public
String
getDesc
()
{
return
this
.
desc
;
}
public
static
TypeEnum
getByValue
(
String
value
)
{
for
(
TypeEnum
typeEnum
:
TypeEnum
.
values
())
{
if
(
typeEnum
.
getValue
()
==
value
)
{
return
typeEnum
;
}
}
return
null
;
}
/**
* 获取Map集合
*
* @param eItem 不包含项
* @return
*/
public
static
Map
<
String
,
String
>
getEnumMap
(
String
...
eItem
)
{
Map
<
String
,
String
>
resultMap
=
new
LinkedHashMap
<>();
for
(
TypeEnum
item
:
TypeEnum
.
values
())
{
try
{
boolean
hasE
=
false
;
for
(
String
e
:
eItem
)
{
if
(
item
.
getValue
()
==
e
)
{
hasE
=
true
;
break
;
}
}
if
(!
hasE
)
{
resultMap
.
put
(
item
.
getValue
()
+
""
,
item
.
getDesc
());
}
}
catch
(
Exception
ex
)
{
}
}
return
resultMap
;
}
}
\ No newline at end of file
src/main/java/com/lilosoft/core/enums/YesNoEnum.java
0 → 100644
View file @
64b13181
package
com.lilosoft.core.enums
;
import
java.util.LinkedHashMap
;
import
java.util.Map
;
public
enum
YesNoEnum
{
NO
(
0
,
"否"
),
YES
(
1
,
"是"
);
private
int
value
;
private
String
desc
;
YesNoEnum
(
int
value
,
String
desc
)
{
this
.
value
=
value
;
this
.
desc
=
desc
;
}
public
int
getValue
()
{
return
this
.
value
;
}
public
String
getDesc
()
{
return
desc
;
}
public
static
YesNoEnum
getByValue
(
int
value
)
{
for
(
YesNoEnum
YesNoEnum
:
YesNoEnum
.
values
())
{
if
(
YesNoEnum
.
getValue
()
==
value
)
{
return
YesNoEnum
;
}
}
return
null
;
}
/**
* 获取Map集合
*
* @param eItem 不包含项
* @return
*/
public
static
Map
<
String
,
String
>
getEnumMap
(
int
...
eItem
)
{
Map
<
String
,
String
>
resultMap
=
new
LinkedHashMap
<
String
,
String
>();
for
(
YesNoEnum
item
:
YesNoEnum
.
values
())
{
try
{
boolean
hasE
=
false
;
for
(
int
e
:
eItem
)
{
if
(
item
.
getValue
()
==
e
)
{
hasE
=
true
;
break
;
}
}
if
(!
hasE
)
{
resultMap
.
put
(
item
.
getValue
()
+
""
,
item
.
getDesc
());
}
}
catch
(
Exception
ex
)
{
}
}
return
resultMap
;
}
}
src/main/java/com/lilosoft/core/exception/AppException.java
0 → 100644
View file @
64b13181
package
com.lilosoft.core.exception
;
public
class
AppException
extends
RuntimeException
{
private
static
final
long
serialVersionUID
=
3770580067312032700L
;
private
int
code
=
99999
;
private
String
message
=
""
;
public
AppException
()
{
}
public
AppException
(
String
message
)
{
this
(-
1
,
message
);
}
public
AppException
(
int
code
)
{
this
.
code
=
code
;
}
public
AppException
(
int
code
,
String
message
)
{
super
(
message
);
this
.
code
=
code
;
this
.
message
=
message
;
}
public
AppException
(
Throwable
e
)
{
super
(
e
);
}
public
AppException
(
String
message
,
Throwable
e
)
{
super
(
message
,
e
);
this
.
message
=
message
;
}
public
int
getCode
()
{
return
this
.
code
;
}
public
void
setCode
(
int
code
)
{
this
.
code
=
code
;
}
@Override
public
String
getMessage
()
{
return
this
.
message
;
}
public
void
setMessage
(
String
message
)
{
this
.
message
=
message
;
}
}
src/main/resources/application.yml
View file @
64b13181
...
@@ -2,9 +2,10 @@
...
@@ -2,9 +2,10 @@
api
:
api
:
xss-open
:
true
#是否开启xss跨站脚本攻击防护支持 (true/false)
xss-open
:
true
#是否开启xss跨站脚本攻击防护支持 (true/false)
requestLimit
:
30
#接口每秒请求限制
requestLimit
:
30
#接口每秒请求限制
baseUrl
:
@
profiles.baseUrl@
#
审批
系统地址
baseUrl
:
@
profiles.baseUrl@
#
预审
系统地址
ocrUrl
:
@
profiles.ocrUrl@
#资料预审接口地址
ocrUrl
:
@
profiles.ocrUrl@
#资料预审接口地址
apiUrl
:
@
profiles.apiUrl@
#资料预审配置接口地址
apiUrl
:
@
profiles.apiUrl@
#资料预审配置接口地址
robertServerUrl
:
@
profiles.robertServerUrl@
#机器人预审地址
mq
:
@
profiles.mq@
#mq监听队列名称
mq
:
@
profiles.mq@
#mq监听队列名称
scheduled
:
#定时任务推送
scheduled
:
#定时任务推送
monitorCron
:
0 0/5 * * * ?
monitorCron
:
0 0/5 * * * ?
...
...
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