Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
M
midjourney-proxy
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
徐少华
midjourney-proxy
Commits
2db8e2cb
Commit
2db8e2cb
authored
May 06, 2021
by
郑永强
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat: [1004704] 小蓝书运营需求
parent
7e5bcc28
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
57 additions
and
11 deletions
+57
-11
ResourcePageBizImpl.java
...a/com/pcloud/book/group/biz/impl/ResourcePageBizImpl.java
+30
-7
ResourcePageConstants.java
...com/pcloud/book/group/constant/ResourcePageConstants.java
+13
-0
ResourcePageItem.java
...n/java/com/pcloud/book/group/entity/ResourcePageItem.java
+4
-0
ResourcePageItemVO.java
...ain/java/com/pcloud/book/group/vo/ResourcePageItemVO.java
+5
-0
ResourcePageItemDao.xml
...k/src/main/resources/mapper/group/ResourcePageItemDao.xml
+5
-4
No files found.
pcloud-service-book/src/main/java/com/pcloud/book/group/biz/impl/ResourcePageBizImpl.java
View file @
2db8e2cb
package
com
.
pcloud
.
book
.
group
.
biz
.
impl
;
import
cn.hutool.core.io.FileUtil
;
import
cn.hutool.extra.qrcode.QrCodeException
;
import
cn.hutool.extra.qrcode.QrCodeUtil
;
import
cn.hutool.http.HttpUtil
;
import
com.pcloud.appcenter.app.dto.AppDto
;
import
com.pcloud.book.applet.biz.AppletBooklistBiz
;
import
com.pcloud.book.applet.biz.AppletThirdResourcesBiz
;
...
...
@@ -85,6 +89,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import
org.springframework.stereotype.Component
;
import
org.springframework.transaction.annotation.Transactional
;
import
java.io.File
;
import
java.util.ArrayList
;
import
java.util.Arrays
;
import
java.util.Date
;
...
...
@@ -362,12 +367,15 @@ public class ResourcePageBizImpl implements ResourcePageBiz {
@ParamLog
(
"生成公众号码"
)
private
void
createOfficialAccountUrl
(
Long
resourcePageColumnId
,
UpdateResourceColumnVO
updateResourceColumnVO
)
{
String
qrcodeUrl
;
String
url
=
null
;
ResourcePageItemVO
itemVO
=
updateResourceColumnVO
.
getItemVOList
().
get
(
0
);
ResourcePage
resourcePage
=
resourcePageDao
.
getById
(
updateResourceColumnVO
.
getResourcePageId
());
if
(
null
==
resourcePage
)
{
return
;
}
Long
officialSceneId
=
resourcePage
.
getOfficialSceneId
();
if
(
ResourcePageConstants
.
QrcodeSourceEnum
.
OFFICIAL_ACCOUNT
.
value
.
equals
(
itemVO
.
getQrcodeSource
())){
if
(
null
==
officialSceneId
)
{
officialSceneId
=
this
.
createOfficialScene
(
resourcePage
.
getBookGroupId
(),
resourcePage
.
getSceneId
());
if
(
null
==
officialSceneId
)
{
...
...
@@ -377,8 +385,22 @@ public class ResourcePageBizImpl implements ResourcePageBiz {
resourcePageDao
.
update
(
resourcePage
);
}
QrcodeSceneDto
qrcodeSceneDto
=
qrcodeSceneConsr
.
getById
(
officialSceneId
);
String
qrcodeUrl
=
qrcodeSceneDto
.
getQrcodeUrl
();
String
url
=
qrcodeSceneDto
.
getUrl
();
qrcodeUrl
=
qrcodeSceneDto
.
getQrcodeUrl
();
url
=
qrcodeSceneDto
.
getUrl
();
}
else
{
qrcodeUrl
=
itemVO
.
getLinkUrl
();
String
tmpDirPath
=
FileUtil
.
getTmpDirPath
();
if
(!
tmpDirPath
.
endsWith
(
File
.
separator
))
{
tmpDirPath
=
tmpDirPath
+
File
.
separator
;
}
File
file
=
FileUtil
.
touch
(
tmpDirPath
+
UUIDUitl
.
generateShort
()
+
".png"
);
HttpUtil
.
downloadFile
(
qrcodeUrl
,
file
);
try
{
url
=
QrCodeUtil
.
decode
(
file
);
}
catch
(
QrCodeException
e
){
log
.
info
(
"解析二维码图片失败,qrcodeUrl:{}"
,
qrcodeUrl
);
}
}
ResourcePageItem
item
=
new
ResourcePageItem
();
item
.
setResourcePageColumnId
(
resourcePageColumnId
);
...
...
@@ -390,13 +412,12 @@ public class ResourcePageBizImpl implements ResourcePageBiz {
item
.
setSeqNum
(
1
);
item
.
setIsShow
(
true
);
item
.
setServeId
(
officialSceneId
);
item
.
setQrcodeSource
(
itemVO
.
getQrcodeSource
()
==
null
?
ResourcePageConstants
.
QrcodeSourceEnum
.
OFFICIAL_ACCOUNT
.
value
:
itemVO
.
getQrcodeSource
());
if
(!
StringUtil
.
isEmpty
(
itemVO
.
getLogoUrl
()))
{
//生成黑白logo二维码
CompletableFuture
<
String
>
qrcodeFuture
=
CompletableFuture
.
supplyAsync
(()->
QrcodeUtils
.
createLogoQr
(
url
,
itemVO
.
getLogoUrl
(),
0xFF000000
,
1
));
try
{
qrcodeUrl
=
qrcodeFuture
.
get
(
);
}
catch
(
InterruptedException
|
Execution
Exception
e
)
{
qrcodeUrl
=
QrcodeUtils
.
createLogoQr
(
url
,
itemVO
.
getLogoUrl
(),
0xFF000000
,
1
);
}
catch
(
Biz
Exception
e
)
{
log
.
error
(
"生成黑白logo二维码失败"
+
e
.
getMessage
(),
e
);
}
}
...
...
@@ -620,10 +641,12 @@ public class ResourcePageBizImpl implements ResourcePageBiz {
for
(
ResourcePageItemVO
itemVO
:
itemVOS
)
{
//带logo的二维码
itemVO
.
setResultUrl
(
itemVO
.
getLinkUrl
());
itemVO
.
setTypeName
(
"公众号"
);
//原始二维码
if
(
ResourcePageConstants
.
QrcodeSourceEnum
.
OFFICIAL_ACCOUNT
.
value
.
equals
(
itemVO
.
getQrcodeSource
())){
QrcodeSceneDto
qrcodeSceneDto
=
qrcodeSceneConsr
.
getById
(
itemVO
.
getServeId
());
itemVO
.
setLinkUrl
(
qrcodeSceneDto
.
getQrcodeUrl
());
itemVO
.
setTypeName
(
"公众号"
);
}
}
}
...
...
pcloud-service-book/src/main/java/com/pcloud/book/group/constant/ResourcePageConstants.java
View file @
2db8e2cb
...
...
@@ -124,4 +124,17 @@ public class ResourcePageConstants {
return
value
;
}
}
public
enum
QrcodeSourceEnum
{
OFFICIAL_ACCOUNT
(
0
,
"公众号二维码"
),
CUSTOM
(
1
,
"自定义"
);
public
final
Integer
value
;
public
final
String
desc
;
QrcodeSourceEnum
(
Integer
value
,
String
desc
){
this
.
value
=
value
;
this
.
desc
=
desc
;
}
}
}
pcloud-service-book/src/main/java/com/pcloud/book/group/entity/ResourcePageItem.java
View file @
2db8e2cb
...
...
@@ -60,4 +60,8 @@ public class ResourcePageItem extends BaseEntity {
* 创建人
*/
private
Long
createUser
;
/**
* 二维码来源
*/
private
Integer
qrcodeSource
;
}
pcloud-service-book/src/main/java/com/pcloud/book/group/vo/ResourcePageItemVO.java
View file @
2db8e2cb
...
...
@@ -60,6 +60,11 @@ public class ResourcePageItemVO extends BaseDto{
*/
private
Integer
linkFrom
;
/**
* 二维码来源
*/
private
Integer
qrcodeSource
;
/**资源其他信息**/
private
String
serveName
;
...
...
pcloud-service-book/src/main/resources/mapper/group/ResourcePageItemDao.xml
View file @
2db8e2cb
...
...
@@ -31,20 +31,20 @@
<!--新增所有列-->
<insert
id=
"insert"
keyProperty=
"id"
useGeneratedKeys=
"true"
>
insert into book.resource_page_item(resource_page_id, resource_page_column_id, serve_id, serve_type, link_url, type_code,
seq_num, is_show, guide_content, logo_url, create_time, update_time, create_user)
seq_num, is_show, guide_content, logo_url, create_time, update_time, create_user
, qrcode_source
)
values (#{resourcePageId}, #{resourcePageColumnId}, #{serveId}, #{serveType}, #{linkUrl}, #{typeCode},
#{seqNum}, #{isShow}, #{guideContent}, #{logoUrl}, now(), now(), #{createUser})
#{seqNum}, #{isShow}, #{guideContent}, #{logoUrl}, now(), now(), #{createUser}
, #{qrcodeSource}
)
</insert>
<insert
id=
"batchInsert"
keyProperty=
"id"
useGeneratedKeys=
"true"
>
insert into book.resource_page_item(resource_page_id, resource_page_column_id, serve_id, serve_type,
link_url, type_code, seq_num, is_show, guide_content, logo_url,
create_time, update_time, create_user)
create_time, update_time, create_user
, qrcode_source
)
values
<foreach
collection=
"list"
separator=
","
index=
"index"
item=
"item"
>
(#{item.resourcePageId}, #{item.resourcePageColumnId}, #{item.serveId}, #{item.serveType},
#{item.linkUrl}, #{item.typeCode}, #{item.seqNum}, #{item.isShow}, #{item.guideContent}, #{item.logoUrl},
now(), now(), #{item.createUser})
now(), now(), #{item.createUser}
, #{item.qrcodeSource}
)
</foreach>
</insert>
...
...
@@ -107,6 +107,7 @@
type_code typeCode,
logo_url logoUrl,
guide_content guideContent,
qrcode_source qrcodeSource,
create_user createUser
FROM
resource_page_item
...
...
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