Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
X
xzxt-api-report
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
雷紫添
xzxt-api-report
Commits
e50a5986
Commit
e50a5986
authored
May 23, 2022
by
wang_jiaxing
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改新疆法律文书入库项目
parent
bc7cfaae
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
56 additions
and
80 deletions
+56
-80
src/main/java/com/founder/file/dao/xjxz/XjxzFlwsMapper.java
+3
-1
src/main/java/com/founder/file/service/impl/XjFlwsServiceImpl.java
+36
-78
src/main/resources/mybatis/xjFlwsMpaaer/XjxzFlwsMapper.xml
+17
-1
No files found.
src/main/java/com/founder/file/dao/xjxz/XjxzFlwsMapper.java
View file @
e50a5986
...
...
@@ -11,10 +11,12 @@ import java.util.Map;
@Mapper
@Component
public
interface
XjxzFlwsMapper
{
void
update
(
@Param
(
"xxzjbh"
)
String
xxzjbh
,
@Param
(
"bytes"
)
byte
[]
bytes
);
int
update
(
@Param
(
"xxzjbh"
)
String
xxzjbh
,
@Param
(
"bytes"
)
byte
[]
bytes
,
@Param
(
"length"
)
int
length
);
List
<
String
>
getNoFileFlwsXxzjbh
(
@Param
(
"flwsList"
)
List
<
Map
<
String
,
String
>>
flwsList
);
List
<
Map
<
String
,
String
>>
getFlwsWzByDate
(
@Param
(
"date"
)
Date
date
,
@Param
(
"xxzjbh"
)
String
xxzjbh
,
@Param
(
"begin"
)
Integer
page
,
@Param
(
"end"
)
Integer
rows
);
Integer
getFlwsCountWzByDate
(
@Param
(
"date"
)
Date
date
,
@Param
(
"xxzjbh"
)
String
xxzjbh
);
List
<
Map
<
String
,
String
>>
getJzzjkFlwsList
(
@Param
(
"date"
)
Date
date
,
@Param
(
"xxzjbh"
)
String
xxzjbh
);
}
src/main/java/com/founder/file/service/impl/XjFlwsServiceImpl.java
View file @
e50a5986
...
...
@@ -4,105 +4,62 @@ import com.founder.file.dao.xjxz.XjxzFlwsMapper;
import
com.founder.file.service.XjFlwsService
;
import
com.founder.util.HttpUtil
;
import
org.apache.commons.io.IOUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.stereotype.Service
;
import
java.io.FileNotFoundException
;
import
java.io.IOException
;
import
java.io.InputStream
;
import
java.util.
*
;
import
java.util.
concurrent.ExecutorService
;
import
java.util.
concurrent.Executors
;
import
java.util.concurrent.
FutureTask
;
import
java.util.
Date
;
import
java.util.
List
;
import
java.util.
Map
;
import
java.util.concurrent.
atomic.AtomicInteger
;
@Service
public
class
XjFlwsServiceImpl
implements
XjFlwsService
{
@Autowired
private
XjxzFlwsMapper
xjxzFlwsMapper
;
@Value
(
"${poorSize}"
)
private
Integer
poorSize
;
@Value
(
"${clusterSize}"
)
private
Integer
clusterSize
;
@Value
(
"${clusterId}"
)
private
Integer
clusterId
;
private
final
ExecutorService
cachedThreadPool
;
{
cachedThreadPool
=
Executors
.
newCachedThreadPool
();
}
@Override
public
String
getJzzjkFlwsnrToXjxz
(
Date
date
,
String
xxzjbh
)
throws
IOException
{
Integer
count
=
xjxzFlwsMapper
.
getFlwsCountWzByDate
(
date
,
xxzjbh
);
int
page
=
(
count
/
poorSize
)
+
1
;
ArrayList
<
FutureTask
<
Map
<
String
,
Integer
>>>
list
=
new
ArrayList
<>();
for
(
int
i
=
0
;
i
<
page
;
i
++)
{
int
limit
=
poorSize
;
int
begin
=
i
*
limit
;
int
end
=
(
i
+
1
)
*
limit
;
FutureTask
<
Map
<
String
,
Integer
>>
xsAjTask
=
new
FutureTask
<>(()
->
{
HashMap
<
String
,
Integer
>
map
=
new
HashMap
<>();
List
<
Map
<
String
,
String
>>
flwsList
=
xjxzFlwsMapper
.
getFlwsWzByDate
(
date
,
xxzjbh
,
begin
,
end
);
ArrayList
<
Exception
>
exceptions
=
new
ArrayList
<>();
System
.
out
.
println
(
"+++++++++++++"
+
flwsList
.
size
());
int
j
=
1
;
int
flwsCount
=
0
;
int
wuNrCount
=
0
;
for
(
Map
<
String
,
String
>
flws
:
flwsList
)
{
try
{
String
flwsUrl
=
flws
.
get
(
"FWDZ"
)
+
flws
.
get
(
"TXLJ"
);
// System.out.println(flwsUrl);
InputStream
is
=
HttpUtil
.
getInputStreamByUrl
(
flwsUrl
);
public
String
getJzzjkFlwsnrToXjxz
(
Date
date
,
String
xxzjbh
)
{
List
<
Map
<
String
,
String
>>
list
=
xjxzFlwsMapper
.
getJzzjkFlwsList
(
date
,
xxzjbh
);
int
wssl
=
list
.
size
();
AtomicInteger
cgsl
=
new
AtomicInteger
(
0
);
AtomicInteger
cwsl
=
new
AtomicInteger
(
0
);
AtomicInteger
wswzwksl
=
new
AtomicInteger
(
0
);
AtomicInteger
wglsl
=
new
AtomicInteger
(
0
);
list
.
stream
().
parallel
().
forEach
(
map
->
{
String
flwsxxzjbh
=
map
.
get
(
"XXZJBH"
);
String
wjwz
=
map
.
get
(
"WJWZ"
);
if
(
StringUtils
.
isNotEmpty
(
flwsxxzjbh
)
&&
StringUtils
.
isNotEmpty
(
wjwz
))
{
try
(
InputStream
is
=
HttpUtil
.
getInputStreamByUrl
(
wjwz
)){
if
(
is
!=
null
)
{
byte
[]
bytes
=
IOUtils
.
toByteArray
(
is
);
if
(
bytes
!=
null
&&
bytes
.
length
>
0
)
{
xjxzFlwsMapper
.
update
(
flws
.
get
(
"XXZJBH"
),
bytes
);
flwsCount
++;
int
length
=
bytes
.
length
;
int
update
=
xjxzFlwsMapper
.
update
(
flwsxxzjbh
,
bytes
,
length
);
if
(
update
>
0
)
{
cgsl
.
incrementAndGet
();
}
else
{
System
.
out
.
println
(
"文件已损害,无内容"
);
wuNrCount
++;
wglsl
.
incrementAndGet
();
}
}
else
{
System
.
out
.
println
(
"文件已损害,无内容"
);
wuNrCount
++;
}
}
catch
(
FileNotFoundException
e
)
{
System
.
out
.
println
(
"404,文件找不到"
);
wuNrCount
++;
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
exceptions
.
add
(
e
);
}
System
.
out
.
println
(
"线程"
+
Thread
.
currentThread
().
getName
()
+
"++++++++++++++"
+
(
j
++));
}
map
.
put
(
"exceptions"
,
exceptions
.
size
());
map
.
put
(
"flws"
,
flwsCount
);
map
.
put
(
"wuNrCount"
,
wuNrCount
);
System
.
out
.
println
(
"============="
+
exceptions
.
size
());
return
map
;
});
cachedThreadPool
.
submit
(
xsAjTask
);
list
.
add
(
xsAjTask
);
}
int
flsws
=
0
;
int
wuNrCount
=
0
;
int
exc
=
0
;
for
(
FutureTask
<
Map
<
String
,
Integer
>>
task
:
list
)
{
try
{
Map
<
String
,
Integer
>
map
=
task
.
get
();
flsws
+=
map
.
get
(
"flws"
);
wuNrCount
+=
map
.
get
(
"wuNrCount"
);
exc
+=
map
.
get
(
"exceptions"
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
exc
+=
1
;
cwsl
.
incrementAndGet
()
;
}
}
else
{
System
.
out
.
println
(
"文件位置为空"
);
wswzwksl
.
incrementAndGet
();
}
return
"更新了"
+
flsws
+
"个法律文书,出错了"
+
exc
+
"个法律文书,有"
+
wuNrCount
+
"个法律文书404或已损坏"
;
});
int
cg
=
cgsl
.
get
();
int
cw
=
cwsl
.
get
();
int
wswzwk
=
wswzwksl
.
get
();
int
wgl
=
wglsl
.
get
();
int
wnr
=
wssl
-
(
cg
+
cw
+
wswzwk
+
wgl
);
return
"共"
+
wssl
+
"个文书准备更新,"
+
"成功更新"
+
cg
+
"个,失败"
+
cw
+
"个,文书位置为空"
+
wswzwk
+
"个,未关联文书"
+
wgl
+
"个,文书内容为空"
+
wnr
+
"个"
;
}
}
\ No newline at end of file
src/main/resources/mybatis/xjFlwsMpaaer/XjxzFlwsMapper.xml
View file @
e50a5986
...
...
@@ -2,7 +2,11 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper
namespace=
"com.founder.file.dao.xjxz.XjxzFlwsMapper"
>
<update
id=
"update"
>
update TB_ST_ASJ_FLWS set FLWS_DZWJNR = #{bytes}, GXSJ = sysdate where xxzjbh = #{xxzjbh}
update TB_ST_ASJ_FLWS
set FLWS_DZWJNR = #{bytes,jdbcType=BLOB},
FLWS_DZWJDX = #{length,jdbcType=INTEGER},
GXSJ = sysdate
where xxzjbh = #{xxzjbh,jdbcType=VARCHAR}
</update>
<select
id=
"getNoFileFlwsXxzjbh"
resultType=
"java.lang.String"
>
select xxzjbh from TB_ST_ASJ_FLWS where FLWS_DZWJNR is null and xxzjbh in
...
...
@@ -47,4 +51,15 @@
and dz.TZTXBH = #{xxzjbh}
</if>
</select>
<select
id=
"getJzzjkFlwsList"
resultType=
"java.util.Map"
>
select tld.XXZJBH as XXZJBH,
tld.FLWS_DZWJWZ as WJWZ
from JZZJK.ASJ_FLWS_TLD tld, TB_ST_ASJ_FLWS flws
where tld.XXSC_PDBZ = '0' and flws.XXSC_PDBZ = '0'
and tld.XXZJBH = flws.XXZJBH
and (flws.DJSJ
<![CDATA[>=]]>
#{date} or flws.XXRSKSJ
<![CDATA[>=]]>
#{date})
<if
test=
"xxzjbh != null and xxzjbh != ''"
>
and tld.xxzjbh = #{xxzjbh}
</if>
</select>
</mapper>
\ No newline at end of file
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