Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
S
smart_gov_platform
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
赵啸非
smart_gov_platform
Commits
b5e8e1df
Commit
b5e8e1df
authored
Jan 04, 2023
by
“yiyousong”
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://gitlab.scsmile.cn/zxf/smart_gov_platform
parents
8b1e0eb0
83cd7550
Changes
6
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
440 additions
and
504 deletions
+440
-504
base-manager/db/base_modules.sql
base-manager/db/base_modules.sql
+2
-0
base-manager/doc/api.md
base-manager/doc/api.md
+2
-2
base-manager/src/main/java/com/mortals/xhx/common/utils/MatterHtmlParseUtil.java
...ava/com/mortals/xhx/common/utils/MatterHtmlParseUtil.java
+52
-4
base-manager/src/main/java/com/mortals/xhx/module/matter/model/MatterEntity.java
...ava/com/mortals/xhx/module/matter/model/MatterEntity.java
+237
-493
base-manager/src/main/java/com/mortals/xhx/module/matter/model/MatterQuery.java
...java/com/mortals/xhx/module/matter/model/MatterQuery.java
+75
-1
base-manager/src/main/resources/sqlmap/module/matter/MatterMapper.xml
.../src/main/resources/sqlmap/module/matter/MatterMapper.xml
+72
-4
No files found.
base-manager/db/base_modules.sql
View file @
b5e8e1df
...
@@ -406,6 +406,8 @@ CREATE TABLE mortals_sys_matter
...
@@ -406,6 +406,8 @@ CREATE TABLE mortals_sys_matter
`superviseShow`
varchar
(
1024
)
COMMENT
'监督投诉方式'
,
`superviseShow`
varchar
(
1024
)
COMMENT
'监督投诉方式'
,
`sort`
int
(
4
)
COMMENT
'排序'
,
`sort`
int
(
4
)
COMMENT
'排序'
,
`source`
tinyint
(
2
)
COMMENT
'事项来源(0.政务网,1.自定义)'
,
`source`
tinyint
(
2
)
COMMENT
'事项来源(0.政务网,1.自定义)'
,
`evaluationUrl`
varchar
(
1024
)
COMMENT
'评价地址'
,
`netApplyUrl`
varchar
(
1024
)
COMMENT
'申请地址'
,
`createTime`
datetime
COMMENT
'创建时间'
,
`createTime`
datetime
COMMENT
'创建时间'
,
`createUserId`
bigint
(
20
)
COMMENT
'创建用户'
,
`createUserId`
bigint
(
20
)
COMMENT
'创建用户'
,
`updateTime`
datetime
COMMENT
'修改时间'
,
`updateTime`
datetime
COMMENT
'修改时间'
,
...
...
base-manager/doc/api.md
View file @
b5e8e1df
...
@@ -9141,7 +9141,7 @@ data| object |数据对象
...
@@ -9141,7 +9141,7 @@ data| object |数据对象
  
appThemeName| String |应用主题名称
  
appThemeName| String |应用主题名称
  
type| Integer |类型(1.终端应用,2.移动端应用)
  
type| Integer |类型(1.终端应用,2.移动端应用)
  
downDevCount| Integer |下发设备次数
  
downDevCount| Integer |下发设备次数
  
shelves| Integer |是否上架(
0.上架,1
.下架)
  
shelves| Integer |是否上架(
1.上架,0
.下架)
  
filePath| String |文件相对路径地址
  
filePath| String |文件相对路径地址
  
distributeFilePath| String |文件部署路径地址
  
distributeFilePath| String |文件部署路径地址
  
version| String |当前版本
  
version| String |当前版本
...
@@ -9208,7 +9208,7 @@ data|object|数据对象
...
@@ -9208,7 +9208,7 @@ data|object|数据对象
 
appThemeName|String|应用主题名称
 
appThemeName|String|应用主题名称
 
type|Integer|类型(1.终端应用,2.移动端应用)
 
type|Integer|类型(1.终端应用,2.移动端应用)
 
downDevCount|Integer|下发设备次数
 
downDevCount|Integer|下发设备次数
 
shelves|Integer|是否上架(
0.上架,1
.下架)
 
shelves|Integer|是否上架(
1.上架,0
.下架)
 
filePath|String|文件相对路径地址
 
filePath|String|文件相对路径地址
 
distributeFilePath|String|文件部署路径地址
 
distributeFilePath|String|文件部署路径地址
 
version|String|当前版本
 
version|String|当前版本
...
...
base-manager/src/main/java/com/mortals/xhx/common/utils/MatterHtmlParseUtil.java
View file @
b5e8e1df
...
@@ -2,6 +2,8 @@ package com.mortals.xhx.common.utils;
...
@@ -2,6 +2,8 @@ package com.mortals.xhx.common.utils;
import
cn.hutool.core.net.url.UrlBuilder
;
import
cn.hutool.core.net.url.UrlBuilder
;
import
cn.hutool.core.util.CharsetUtil
;
import
cn.hutool.core.util.CharsetUtil
;
import
cn.hutool.core.util.ReUtil
;
import
cn.hutool.core.util.StrUtil
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSON
;
import
com.mortals.framework.common.Rest
;
import
com.mortals.framework.common.Rest
;
import
com.mortals.framework.util.DataUtil
;
import
com.mortals.framework.util.DataUtil
;
...
@@ -55,7 +57,7 @@ public class MatterHtmlParseUtil {
...
@@ -55,7 +57,7 @@ public class MatterHtmlParseUtil {
List
<
MatterEntity
>
matterEntityList
=
new
ArrayList
<>();
List
<
MatterEntity
>
matterEntityList
=
new
ArrayList
<>();
try
{
try
{
Document
dom
=
Jsoup
.
connect
(
url
).
data
(
params
).
get
();
Document
dom
=
Jsoup
.
connect
(
url
).
data
(
params
).
get
();
//System.out.println(dom.html());
//System.out.println(dom.html());
Elements
elements
=
dom
.
selectXpath
(
matterListExp
);
Elements
elements
=
dom
.
selectXpath
(
matterListExp
);
for
(
int
i
=
0
;
i
<
elements
.
size
();
i
++)
{
for
(
int
i
=
0
;
i
<
elements
.
size
();
i
++)
{
...
@@ -65,10 +67,34 @@ public class MatterHtmlParseUtil {
...
@@ -65,10 +67,34 @@ public class MatterHtmlParseUtil {
}
}
String
title
=
element
.
attr
(
"title"
);
String
title
=
element
.
attr
(
"title"
);
String
href
=
element
.
firstElementChild
().
attr
(
"href"
);
String
href
=
element
.
firstElementChild
().
attr
(
"href"
);
//element.child()
if
(
href
.
equalsIgnoreCase
(
"javascript:void(0)"
))
{
if
(
href
.
equalsIgnoreCase
(
"javascript:void(0)"
))
{
continue
;
continue
;
}
}
buildMatter
(
matterEntityList
,
title
,
href
);
//抓取申请与评价页面地址
Element
nextElementSibling
=
element
.
nextElementSibling
();
String
evaluationUrl
=
""
;
String
netApplyUrl
=
""
;
Elements
elementsA
=
nextElementSibling
.
selectXpath
(
"//a"
);
if
(
elementsA
!=
null
)
{
for
(
Element
tempElement
:
elementsA
)
{
if
(
tempElement
.
text
().
trim
().
equals
(
"好差评"
))
{
String
onclick
=
tempElement
.
attr
(
"onclick"
);
evaluationUrl
=
StrUtil
.
subBetween
(
onclick
,
"evaluation('"
,
"')"
);
}
if
(
tempElement
.
text
().
trim
().
equals
(
"申请"
))
{
String
onclick
=
tempElement
.
attr
(
"onclick"
);
List
<
String
>
list
=
ReUtil
.
findAllGroup0
(
"'(.*?)'"
,
onclick
);
if
(
list
.
size
()
>
4
)
{
netApplyUrl
=
StrUtil
.
subBetween
(
list
.
get
(
3
),
"'"
,
"'"
);
}
}
}
}
buildMatter
(
matterEntityList
,
title
,
href
,
evaluationUrl
,
netApplyUrl
);
}
}
elements
=
dom
.
selectXpath
(
matterListLiExp
);
elements
=
dom
.
selectXpath
(
matterListLiExp
);
...
@@ -79,7 +105,27 @@ public class MatterHtmlParseUtil {
...
@@ -79,7 +105,27 @@ public class MatterHtmlParseUtil {
}
}
String
title
=
element
.
attr
(
"title"
);
String
title
=
element
.
attr
(
"title"
);
String
href
=
element
.
attr
(
"href"
);
String
href
=
element
.
attr
(
"href"
);
buildMatter
(
matterEntityList
,
title
,
href
);
//抓取申请与评价页面地址
String
evaluationUrl
=
""
;
String
netApplyUrl
=
""
;
Element
nextElementSibling
=
element
.
nextElementSibling
();
if
(
nextElementSibling
!=
null
)
{
Elements
elementsA
=
nextElementSibling
.
selectXpath
(
"//a"
);
for
(
Element
tempElement
:
elementsA
)
{
if
(
"好差评"
.
equals
(
tempElement
.
text
().
trim
()))
{
String
onclick
=
tempElement
.
attr
(
"onclick"
);
evaluationUrl
=
StrUtil
.
subBetween
(
onclick
,
"evaluation('"
,
"')"
);
}
if
(
"申请"
.
equals
(
tempElement
.
text
().
trim
()))
{
String
onclick
=
tempElement
.
attr
(
"onclick"
);
List
<
String
>
list
=
ReUtil
.
findAllGroup0
(
"'(.*?)'"
,
onclick
);
if
(
list
.
size
()
>
4
)
{
netApplyUrl
=
StrUtil
.
subBetween
(
list
.
get
(
3
),
"'"
,
"'"
);
}
}
}
}
buildMatter
(
matterEntityList
,
title
,
href
,
evaluationUrl
,
netApplyUrl
);
}
}
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
...
@@ -90,7 +136,7 @@ public class MatterHtmlParseUtil {
...
@@ -90,7 +136,7 @@ public class MatterHtmlParseUtil {
return
Rest
.
ok
(
matterEntityList
);
return
Rest
.
ok
(
matterEntityList
);
}
}
private
static
void
buildMatter
(
List
<
MatterEntity
>
matterEntityList
,
String
title
,
String
href
)
{
private
static
void
buildMatter
(
List
<
MatterEntity
>
matterEntityList
,
String
title
,
String
href
,
String
evaluationUrl
,
String
netApplyUrl
)
{
UrlBuilder
builder
=
UrlBuilder
.
ofHttp
(
href
,
CharsetUtil
.
CHARSET_UTF_8
);
UrlBuilder
builder
=
UrlBuilder
.
ofHttp
(
href
,
CharsetUtil
.
CHARSET_UTF_8
);
String
itemCode
=
builder
.
getQuery
().
get
(
"itemCode"
).
toString
();
String
itemCode
=
builder
.
getQuery
().
get
(
"itemCode"
).
toString
();
String
taskType
=
builder
.
getQuery
().
get
(
"taskType"
).
toString
();
String
taskType
=
builder
.
getQuery
().
get
(
"taskType"
).
toString
();
...
@@ -106,6 +152,8 @@ public class MatterHtmlParseUtil {
...
@@ -106,6 +152,8 @@ public class MatterHtmlParseUtil {
matterEntity
.
setAreaCode
(
areaCode
);
matterEntity
.
setAreaCode
(
areaCode
);
matterEntity
.
setMatterName
(
title
);
matterEntity
.
setMatterName
(
title
);
matterEntity
.
setUrl
(
href
);
matterEntity
.
setUrl
(
href
);
matterEntity
.
setEvaluationUrl
(
evaluationUrl
);
matterEntity
.
setNetApplyUrl
(
evaluationUrl
);
matterEntity
.
setSource
(
SourceEnum
.
政务网
.
getValue
());
matterEntity
.
setSource
(
SourceEnum
.
政务网
.
getValue
());
matterEntityList
.
add
(
matterEntity
);
matterEntityList
.
add
(
matterEntity
);
}
}
...
...
base-manager/src/main/java/com/mortals/xhx/module/matter/model/MatterEntity.java
View file @
b5e8e1df
This diff is collapsed.
Click to expand it.
base-manager/src/main/java/com/mortals/xhx/module/matter/model/MatterQuery.java
View file @
b5e8e1df
...
@@ -8,7 +8,7 @@ import com.mortals.xhx.module.matter.model.MatterEntity;
...
@@ -8,7 +8,7 @@ import com.mortals.xhx.module.matter.model.MatterEntity;
* 基础事项查询对象
* 基础事项查询对象
*
*
* @author zxfei
* @author zxfei
* @date 2022-1
1-23
* @date 2022-1
2-28
*/
*/
public
class
MatterQuery
extends
MatterEntity
{
public
class
MatterQuery
extends
MatterEntity
{
/** 开始 序号,主键,自增长 */
/** 开始 序号,主键,自增长 */
...
@@ -326,6 +326,12 @@ public class MatterQuery extends MatterEntity {
...
@@ -326,6 +326,12 @@ public class MatterQuery extends MatterEntity {
/** 结束 修改时间 */
/** 结束 修改时间 */
private
String
updateTimeEnd
;
private
String
updateTimeEnd
;
/** 评价地址 */
private
List
<
String
>
evaluationUrlList
;
/** 申请地址 */
private
List
<
String
>
netApplyUrlList
;
/** OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4) */
/** OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4) */
private
List
<
MatterQuery
>
orConditionList
;
private
List
<
MatterQuery
>
orConditionList
;
...
@@ -1949,6 +1955,36 @@ public class MatterQuery extends MatterEntity {
...
@@ -1949,6 +1955,36 @@ public class MatterQuery extends MatterEntity {
this
.
updateTimeEnd
=
updateTimeEnd
;
this
.
updateTimeEnd
=
updateTimeEnd
;
}
}
/**
* 获取 评价地址
* @return evaluationUrlList
*/
public
List
<
String
>
getEvaluationUrlList
(){
return
this
.
evaluationUrlList
;
}
/**
* 设置 评价地址
* @param evaluationUrlList
*/
public
void
setEvaluationUrlList
(
List
<
String
>
evaluationUrlList
){
this
.
evaluationUrlList
=
evaluationUrlList
;
}
/**
* 获取 申请地址
* @return netApplyUrlList
*/
public
List
<
String
>
getNetApplyUrlList
(){
return
this
.
netApplyUrlList
;
}
/**
* 设置 申请地址
* @param netApplyUrlList
*/
public
void
setNetApplyUrlList
(
List
<
String
>
netApplyUrlList
){
this
.
netApplyUrlList
=
netApplyUrlList
;
}
/**
/**
* 设置 序号,主键,自增长
* 设置 序号,主键,自增长
* @param id
* @param id
...
@@ -3548,6 +3584,44 @@ public class MatterQuery extends MatterEntity {
...
@@ -3548,6 +3584,44 @@ public class MatterQuery extends MatterEntity {
}
}
/**
* 设置 评价地址
* @param evaluationUrl
*/
public
MatterQuery
evaluationUrl
(
String
evaluationUrl
){
setEvaluationUrl
(
evaluationUrl
);
return
this
;
}
/**
* 设置 评价地址
* @param evaluationUrlList
*/
public
MatterQuery
evaluationUrlList
(
List
<
String
>
evaluationUrlList
){
this
.
evaluationUrlList
=
evaluationUrlList
;
return
this
;
}
/**
* 设置 申请地址
* @param netApplyUrl
*/
public
MatterQuery
netApplyUrl
(
String
netApplyUrl
){
setNetApplyUrl
(
netApplyUrl
);
return
this
;
}
/**
* 设置 申请地址
* @param netApplyUrlList
*/
public
MatterQuery
netApplyUrlList
(
List
<
String
>
netApplyUrlList
){
this
.
netApplyUrlList
=
netApplyUrlList
;
return
this
;
}
/**
/**
* 获取 OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4)
* 获取 OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4)
* @return orConditionList
* @return orConditionList
...
...
base-manager/src/main/resources/sqlmap/module/matter/MatterMapper.xml
View file @
b5e8e1df
This diff is collapsed.
Click to expand it.
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