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
3c1fe36c
Commit
3c1fe36c
authored
Mar 16, 2020
by
曾迫
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
个人号发送小程序基础
parent
edc35b01
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
25 changed files
with
673 additions
and
62 deletions
+673
-62
ReplyParamDTO.java
...src/main/java/com/pcloud/book/base/dto/ReplyParamDTO.java
+4
-1
ReplyTypeEnum.java
...in/java/com/pcloud/book/keywords/enums/ReplyTypeEnum.java
+6
-1
PcloudRobotBizImpl.java
...cloud/book/pcloudkeyword/biz/impl/PcloudRobotBizImpl.java
+36
-0
PcloudRobotWelcome.java
.../pcloud/book/pcloudkeyword/entity/PcloudRobotWelcome.java
+11
-1
WelcomeReplyTypeEnum.java
...pcloud/book/pcloudkeyword/enums/WelcomeReplyTypeEnum.java
+5
-1
PcloudRobotSet.java
...ava/com/pcloud/book/pcloudkeyword/set/PcloudRobotSet.java
+10
-0
PersonalStageBizImpl.java
...oud/book/personalstage/biz/impl/PersonalStageBizImpl.java
+60
-15
PersonalStageJumpBizImpl.java
...book/personalstage/biz/impl/PersonalStageJumpBizImpl.java
+59
-20
PersonalStageJumpLinkup.java
...ud/book/personalstage/entity/PersonalStageJumpLinkup.java
+12
-1
PersonalStageReplyItem.java
...oud/book/personalstage/entity/PersonalStageReplyItem.java
+11
-1
BaseStageJumpRequestVO.java
...book/personalstage/vo/request/BaseStageJumpRequestVO.java
+1
-0
SelfPushBiz.java
...k/src/main/java/com/pcloud/book/push/biz/SelfPushBiz.java
+16
-0
SelfPushBizImpl.java
...n/java/com/pcloud/book/push/biz/impl/SelfPushBizImpl.java
+0
-0
PersonalAppletsDao.java
...ain/java/com/pcloud/book/push/dao/PersonalAppletsDao.java
+19
-0
PersonalAppletsDaoImpl.java
...com/pcloud/book/push/dao/impl/PersonalAppletsDaoImpl.java
+31
-0
PersonalAppletsRecordDTO.java
...va/com/pcloud/book/push/dto/PersonalAppletsRecordDTO.java
+110
-0
PersonalApplets.java
...ain/java/com/pcloud/book/push/entity/PersonalApplets.java
+27
-0
SelfPushItem.java
...c/main/java/com/pcloud/book/push/entity/SelfPushItem.java
+6
-2
ItemTypeEnum.java
...rc/main/java/com/pcloud/book/push/enums/ItemTypeEnum.java
+6
-1
SelfPushFacade.java
...main/java/com/pcloud/book/push/facade/SelfPushFacade.java
+85
-0
PcloudRobotWelcome.Mapper.xml
...ources/mapper/pcloudkeyword/PcloudRobotWelcome.Mapper.xml
+6
-3
PersonalStageJumpLinkup.xml
...esources/mapper/personalstage/PersonalStageJumpLinkup.xml
+10
-5
PersonalStageReplyItem.xml
...resources/mapper/personalstage/PersonalStageReplyItem.xml
+10
-5
PersonalAppletsMapper.xml
.../src/main/resources/mapper/push/PersonalAppletsMapper.xml
+74
-0
SelfPushItemMapper.xml
...ook/src/main/resources/mapper/push/SelfPushItemMapper.xml
+58
-5
No files found.
pcloud-facade-book/src/main/java/com/pcloud/book/base/dto/ReplyParamDTO.java
View file @
3c1fe36c
...
@@ -9,7 +9,7 @@ import lombok.Data;
...
@@ -9,7 +9,7 @@ import lombok.Data;
@ApiModel
(
"回复统一参数"
)
@ApiModel
(
"回复统一参数"
)
public
class
ReplyParamDTO
extends
BaseDto
{
public
class
ReplyParamDTO
extends
BaseDto
{
@ApiModelProperty
(
"类型 1 文字 2 图片 3 链接 4应用 5素材"
)
@ApiModelProperty
(
"类型 1 文字 2 图片 3 链接 4应用 5素材
7小程序
"
)
private
Integer
replyType
;
private
Integer
replyType
;
@ApiModelProperty
(
"内容"
)
@ApiModelProperty
(
"内容"
)
...
@@ -30,6 +30,9 @@ public class ReplyParamDTO extends BaseDto {
...
@@ -30,6 +30,9 @@ public class ReplyParamDTO extends BaseDto {
@ApiModelProperty
(
"资源id"
)
@ApiModelProperty
(
"资源id"
)
private
Long
resourceId
;
private
Long
resourceId
;
@ApiModelProperty
(
"小程序主键id"
)
private
Long
personalAppletsId
;
@ApiModelProperty
(
"描述"
)
@ApiModelProperty
(
"描述"
)
private
String
description
;
private
String
description
;
...
...
pcloud-service-book/src/main/java/com/pcloud/book/keywords/enums/ReplyTypeEnum.java
View file @
3c1fe36c
...
@@ -30,7 +30,12 @@ public enum ReplyTypeEnum {
...
@@ -30,7 +30,12 @@ public enum ReplyTypeEnum {
/**
/**
* 语音
* 语音
*/
*/
AUDIO
(
6
);
AUDIO
(
6
),
/**
* 小程序
*/
PERSONALAPPLETS
(
7
);
/**
/**
* 值
* 值
*/
*/
...
...
pcloud-service-book/src/main/java/com/pcloud/book/pcloudkeyword/biz/impl/PcloudRobotBizImpl.java
View file @
3c1fe36c
...
@@ -42,6 +42,8 @@ import com.pcloud.book.pcloudkeyword.facade.response.PcloudRobotClassifyResponse
...
@@ -42,6 +42,8 @@ import com.pcloud.book.pcloudkeyword.facade.response.PcloudRobotClassifyResponse
import
com.pcloud.book.pcloudkeyword.facade.response.PcloudRobotResponseVO
;
import
com.pcloud.book.pcloudkeyword.facade.response.PcloudRobotResponseVO
;
import
com.pcloud.book.pcloudkeyword.set.PcloudRobotSet
;
import
com.pcloud.book.pcloudkeyword.set.PcloudRobotSet
;
import
com.pcloud.book.push.biz.SelfPushBiz
;
import
com.pcloud.book.push.biz.SelfPushBiz
;
import
com.pcloud.book.push.dao.PersonalAppletsDao
;
import
com.pcloud.book.push.entity.PersonalApplets
;
import
com.pcloud.book.skill.biz.PcloudSkillBiz
;
import
com.pcloud.book.skill.biz.PcloudSkillBiz
;
import
com.pcloud.book.skill.entity.PcloudSkill
;
import
com.pcloud.book.skill.entity.PcloudSkill
;
import
com.pcloud.book.util.common.ThreadPoolUtils
;
import
com.pcloud.book.util.common.ThreadPoolUtils
;
...
@@ -132,6 +134,11 @@ public class PcloudRobotBizImpl implements PcloudRobotBiz {
...
@@ -132,6 +134,11 @@ public class PcloudRobotBizImpl implements PcloudRobotBiz {
@Autowired
@Autowired
private
QrcodeService
qrcodeService
;
private
QrcodeService
qrcodeService
;
@Autowired
private
PersonalAppletsDao
personalAppletsDao
;
@ParamLog
(
value
=
"[changeRobotRealStatus]"
,
isAfterReturn
=
false
)
@ParamLog
(
value
=
"[changeRobotRealStatus]"
,
isAfterReturn
=
false
)
@Override
@Override
@Transactional
(
rollbackFor
=
{
Exception
.
class
})
@Transactional
(
rollbackFor
=
{
Exception
.
class
})
...
@@ -373,6 +380,35 @@ public class PcloudRobotBizImpl implements PcloudRobotBiz {
...
@@ -373,6 +380,35 @@ public class PcloudRobotBizImpl implements PcloudRobotBiz {
sendMomentsDTO
.
setCounts
(
count
);
sendMomentsDTO
.
setCounts
(
count
);
sendMomentsDTO
.
setIndex
(
index
);
sendMomentsDTO
.
setIndex
(
index
);
sendMomentsDTO
.
setRobotProcessType
(
RobotProcessTypeEnum
.
WELCOME
);
sendMomentsDTO
.
setRobotProcessType
(
RobotProcessTypeEnum
.
WELCOME
);
WxGroupSDK
.
sendMessageToPhone
(
sendMomentsDTO
);
}
else
if
(
WelcomeReplyTypeEnum
.
APPLETS
.
value
.
equals
(
replyType
)){
SendMomentsDTO
sendMomentsDTO
=
new
SendMomentsDTO
();
List
<
String
>
userWxIds
=
new
ArrayList
<>();
userWxIds
.
add
(
userWxId
);
//发送的小程序
PersonalApplets
byId
=
personalAppletsDao
.
getById
(
robotWelcome
.
getPersonalAppletsId
());
if
(
byId
==
null
){
return
;
}
GroupRobotDTO
info
=
wechatGroupConsr
.
getGroupRobotByRobotId
(
robotWxId
);
if
(
info
!=
null
){
sendMomentsDTO
.
setIsMasterWx
(
info
.
getMasterWx
());
sendMomentsDTO
.
setReceiveAccount
(
info
.
getMac
());
}
sendMomentsDTO
.
setMomentType
(
BusinessConstant
.
MomentTypeEnum
.
SEND_WX_MINI
);
sendMomentsDTO
.
setContent
(
byId
.
getAppletsId
());
//小程序id
sendMomentsDTO
.
setLink
(
byId
.
getAppletsUrl
());
//小程序访问地址
sendMomentsDTO
.
setImages
(
userWxIds
);
//发送人
sendMomentsDTO
.
setLinkTitle
(
byId
.
getSlogan
());
//小程序宣传语
sendMomentsDTO
.
setLinkDesc
(
byId
.
getSloganImgUrl
());
//小程序宣传图
sendMomentsDTO
.
setIp
(
ip
);
sendMomentsDTO
.
setMessageGroupId
(
messageGroup
);
sendMomentsDTO
.
setCounts
(
count
);
sendMomentsDTO
.
setIndex
(
index
);
sendMomentsDTO
.
setCode
(
SendMessageTypeEnum
.
SELF
.
getCode
());
sendMomentsDTO
.
setRobotProcessType
(
RobotProcessTypeEnum
.
WELCOME
);
sendMomentsDTO
.
setAltId
(
robotWxId
);
sendMomentsDTO
.
setWxId
(
userWxId
);
wechatGroupConsr
.
sendMessage
(
JSON
.
toJSONString
(
sendMomentsDTO
));
wechatGroupConsr
.
sendMessage
(
JSON
.
toJSONString
(
sendMomentsDTO
));
}
}
index
++;
index
++;
...
...
pcloud-service-book/src/main/java/com/pcloud/book/pcloudkeyword/entity/PcloudRobotWelcome.java
View file @
3c1fe36c
...
@@ -19,7 +19,7 @@ public class PcloudRobotWelcome extends BaseEntity {
...
@@ -19,7 +19,7 @@ public class PcloudRobotWelcome extends BaseEntity {
@ApiModelProperty
(
"全平台分类id"
)
@ApiModelProperty
(
"全平台分类id"
)
private
Long
pcloudClassifyId
;
private
Long
pcloudClassifyId
;
@ApiModelProperty
(
"类型 1 文字 2 图片 3 链接 4应用 5素材"
)
@ApiModelProperty
(
"类型 1 文字 2 图片 3 链接 4应用 5素材
6小程序
"
)
private
Integer
replyType
;
private
Integer
replyType
;
@ApiModelProperty
(
"内容"
)
@ApiModelProperty
(
"内容"
)
...
@@ -61,6 +61,16 @@ public class PcloudRobotWelcome extends BaseEntity {
...
@@ -61,6 +61,16 @@ public class PcloudRobotWelcome extends BaseEntity {
@ApiModelProperty
(
"文件转码后的单张图片集合"
)
@ApiModelProperty
(
"文件转码后的单张图片集合"
)
private
List
<
ResourceOfficeItemDTO
>
resourceOfficeItemDTOs
;
private
List
<
ResourceOfficeItemDTO
>
resourceOfficeItemDTOs
;
@ApiModelProperty
(
"小程序主键id"
)
private
Integer
personalAppletsId
;
@ApiModelProperty
(
"小程序宣传语"
)
private
String
slogan
;
@ApiModelProperty
(
"小程序宣传图片"
)
private
String
sloganImgUrl
;
}
}
pcloud-service-book/src/main/java/com/pcloud/book/pcloudkeyword/enums/WelcomeReplyTypeEnum.java
View file @
3c1fe36c
...
@@ -18,7 +18,11 @@ public enum WelcomeReplyTypeEnum {
...
@@ -18,7 +18,11 @@ public enum WelcomeReplyTypeEnum {
/**
/**
* 语音
* 语音
*/
*/
AUDIO
(
6
);
AUDIO
(
6
),
/**
* 值
*/
APPLETS
(
7
);
/**
/**
* 值
* 值
*/
*/
...
...
pcloud-service-book/src/main/java/com/pcloud/book/pcloudkeyword/set/PcloudRobotSet.java
View file @
3c1fe36c
...
@@ -12,6 +12,8 @@ import com.pcloud.book.group.tools.SendWeixinRequestTools;
...
@@ -12,6 +12,8 @@ import com.pcloud.book.group.tools.SendWeixinRequestTools;
import
com.pcloud.book.keywords.enums.ReplyTypeEnum
;
import
com.pcloud.book.keywords.enums.ReplyTypeEnum
;
import
com.pcloud.book.pcloudkeyword.entity.PcloudRobotWelcome
;
import
com.pcloud.book.pcloudkeyword.entity.PcloudRobotWelcome
;
import
com.pcloud.book.pcloudkeyword.enums.WelcomeReplyTypeEnum
;
import
com.pcloud.book.pcloudkeyword.enums.WelcomeReplyTypeEnum
;
import
com.pcloud.book.push.dao.PersonalAppletsDao
;
import
com.pcloud.book.push.entity.PersonalApplets
;
import
com.pcloud.book.skill.dto.AppOrProductReplyDTO
;
import
com.pcloud.book.skill.dto.AppOrProductReplyDTO
;
import
com.pcloud.channelcenter.wechat.dto.AccountSettingDto
;
import
com.pcloud.channelcenter.wechat.dto.AccountSettingDto
;
import
com.pcloud.common.core.aspect.ParamLog
;
import
com.pcloud.common.core.aspect.ParamLog
;
...
@@ -44,6 +46,9 @@ public class PcloudRobotSet {
...
@@ -44,6 +46,9 @@ public class PcloudRobotSet {
@Autowired
@Autowired
private
WechatGroupConsr
wechatGroupConsr
;
private
WechatGroupConsr
wechatGroupConsr
;
@Autowired
private
PersonalAppletsDao
personalAppletsDao
;
@ParamLog
(
"填充欢迎语回复"
)
@ParamLog
(
"填充欢迎语回复"
)
public
void
fillRobotWelcome
(
List
<
PcloudRobotWelcome
>
robotWelcomeList
)
{
public
void
fillRobotWelcome
(
List
<
PcloudRobotWelcome
>
robotWelcomeList
)
{
if
(
ListUtils
.
isEmpty
(
robotWelcomeList
)){
if
(
ListUtils
.
isEmpty
(
robotWelcomeList
)){
...
@@ -75,6 +80,11 @@ public class PcloudRobotSet {
...
@@ -75,6 +80,11 @@ public class PcloudRobotSet {
robotWelcome
.
setResourceOfficeItemDTOs
(
resourceDTO
.
getResourceOfficeItemDTOs
());
robotWelcome
.
setResourceOfficeItemDTOs
(
resourceDTO
.
getResourceOfficeItemDTOs
());
}
}
}
}
if
(
WelcomeReplyTypeEnum
.
APPLETS
.
value
.
equals
(
type
)){
PersonalApplets
byId
=
personalAppletsDao
.
getById
(
robotWelcome
.
getPersonalAppletsId
());
robotWelcome
.
setSlogan
(
byId
.
getSlogan
());
robotWelcome
.
setSloganImgUrl
(
byId
.
getSloganImgUrl
());
}
}
}
}
}
public
void
sendAppOrProductReply
(
AppOrProductReplyDTO
replyDTO
)
{
public
void
sendAppOrProductReply
(
AppOrProductReplyDTO
replyDTO
)
{
...
...
pcloud-service-book/src/main/java/com/pcloud/book/personalstage/biz/impl/PersonalStageBizImpl.java
View file @
3c1fe36c
...
@@ -47,6 +47,8 @@ import com.pcloud.book.personalstage.enums.StageReplyRelevEnum;
...
@@ -47,6 +47,8 @@ import com.pcloud.book.personalstage.enums.StageReplyRelevEnum;
import
com.pcloud.book.personalstage.utils.CacheUtils
;
import
com.pcloud.book.personalstage.utils.CacheUtils
;
import
com.pcloud.book.personalstage.vo.request.AddScoreRequestVO
;
import
com.pcloud.book.personalstage.vo.request.AddScoreRequestVO
;
import
com.pcloud.book.personlstage.dto.UserReplaceCodeDTO
;
import
com.pcloud.book.personlstage.dto.UserReplaceCodeDTO
;
import
com.pcloud.book.push.dao.PersonalAppletsDao
;
import
com.pcloud.book.push.entity.PersonalApplets
;
import
com.pcloud.common.core.aspect.ParamLog
;
import
com.pcloud.common.core.aspect.ParamLog
;
import
com.pcloud.common.core.mq.DelayQueueDTO
;
import
com.pcloud.common.core.mq.DelayQueueDTO
;
import
com.pcloud.common.exceptions.BizException
;
import
com.pcloud.common.exceptions.BizException
;
...
@@ -135,6 +137,10 @@ public class PersonalStageBizImpl implements PersonalStageBiz {
...
@@ -135,6 +137,10 @@ public class PersonalStageBizImpl implements PersonalStageBiz {
@Autowired
@Autowired
private
ReplaceCodeDao
replaceCodeDao
;
private
ReplaceCodeDao
replaceCodeDao
;
@Autowired
private
PersonalAppletsDao
personalAppletsDao
;
@Value
(
"${wechat.group.link.prefix}"
)
@Value
(
"${wechat.group.link.prefix}"
)
private
String
wechatLinkPrefix
;
private
String
wechatLinkPrefix
;
...
@@ -230,24 +236,31 @@ public class PersonalStageBizImpl implements PersonalStageBiz {
...
@@ -230,24 +236,31 @@ public class PersonalStageBizImpl implements PersonalStageBiz {
}
}
List
<
Long
>
resourceIds
=
replyItems
.
stream
().
filter
(
s
->(
ReplyTypeEnum
.
RESOURCE
.
value
.
equals
(
s
.
getReplyType
())
List
<
Long
>
resourceIds
=
replyItems
.
stream
().
filter
(
s
->(
ReplyTypeEnum
.
RESOURCE
.
value
.
equals
(
s
.
getReplyType
())
||
ReplyTypeEnum
.
AUDIO
.
value
.
equals
(
s
.
getReplyType
()))&&
s
.
getResourceId
()!=
null
).
map
(
PersonalStageReplyItem:
:
getResourceId
).
collect
(
Collectors
.
toList
());
||
ReplyTypeEnum
.
AUDIO
.
value
.
equals
(
s
.
getReplyType
()))&&
s
.
getResourceId
()!=
null
).
map
(
PersonalStageReplyItem:
:
getResourceId
).
collect
(
Collectors
.
toList
());
if
(
ListUtils
.
isEmpty
(
resourceIds
)){
if
(!
ListUtils
.
isEmpty
(
resourceIds
)){
return
;
Map
<
Long
,
ResourceDTO
>
resourceDTOMap
=
resourceConsr
.
mapByIds
(
resourceIds
);
for
(
PersonalStageReplyItem
item:
replyItems
)
{
Integer
type
=
item
.
getReplyType
();
if
(
ReplyTypeEnum
.
RESOURCE
.
value
.
equals
(
type
)
||
ReplyTypeEnum
.
AUDIO
.
value
.
equals
(
type
))
{
ResourceDTO
resourceDTO
=
resourceDTOMap
.
get
(
item
.
getResourceId
());
if
(
resourceDTO
!=
null
)
{
item
.
setResourceName
(
resourceDTO
.
getResourceName
());
item
.
setResourceUrl
(
resourceDTO
.
getFileUrl
());
item
.
setResourceTypeCode
(
resourceDTO
.
getTypeCode
());
item
.
setResourceTypeName
(
resourceDTO
.
getTypeName
());
item
.
setFileType
(
resourceDTO
.
getFileType
());
item
.
setResourcePdfItems
(
resourceDTO
.
getResourcePdfItems
());
item
.
setResourceOfficeItemDTOs
(
resourceDTO
.
getResourceOfficeItemDTOs
());
item
.
setFileSize
(
resourceDTO
.
getFileSize
());
}
}
}
}
}
Map
<
Long
,
ResourceDTO
>
resourceDTOMap
=
resourceConsr
.
mapByIds
(
resourceIds
);
for
(
PersonalStageReplyItem
item:
replyItems
){
for
(
PersonalStageReplyItem
item:
replyItems
){
Integer
type
=
item
.
getReplyType
();
Integer
type
=
item
.
getReplyType
();
if
(
ReplyTypeEnum
.
RESOURCE
.
value
.
equals
(
type
)||
ReplyTypeEnum
.
AUDIO
.
value
.
equals
(
type
)){
if
(
ReplyTypeEnum
.
PERSONALAPPLETS
.
value
.
equals
(
type
))
{
ResourceDTO
resourceDTO
=
resourceDTOMap
.
get
(
item
.
getResourceId
());
PersonalApplets
byId
=
personalAppletsDao
.
getById
(
item
.
getPersonalAppletsId
());
if
(
resourceDTO
!=
null
){
item
.
setSlogan
(
byId
.
getSlogan
());
item
.
setResourceName
(
resourceDTO
.
getResourceName
());
item
.
setSloganImgUrl
(
byId
.
getSloganImgUrl
());
item
.
setResourceUrl
(
resourceDTO
.
getFileUrl
());
item
.
setResourceTypeCode
(
resourceDTO
.
getTypeCode
());
item
.
setResourceTypeName
(
resourceDTO
.
getTypeName
());
item
.
setFileType
(
resourceDTO
.
getFileType
());
item
.
setResourcePdfItems
(
resourceDTO
.
getResourcePdfItems
());
item
.
setResourceOfficeItemDTOs
(
resourceDTO
.
getResourceOfficeItemDTOs
());
item
.
setFileSize
(
resourceDTO
.
getFileSize
());
}
}
}
}
}
}
}
...
@@ -999,6 +1012,38 @@ public class PersonalStageBizImpl implements PersonalStageBiz {
...
@@ -999,6 +1012,38 @@ public class PersonalStageBizImpl implements PersonalStageBiz {
wechatGroupConsr
.
sendMessage
(
JSON
.
toJSONString
(
sendMomentsDTO
));
wechatGroupConsr
.
sendMessage
(
JSON
.
toJSONString
(
sendMomentsDTO
));
}
}
}
}
if
(
ReplyTypeEnum
.
PERSONALAPPLETS
.
value
.
equals
(
type
))
{
SendMomentsDTO
sendMomentsDTO
=
new
SendMomentsDTO
();
List
<
String
>
userWxIds
=
new
ArrayList
<>();
userWxIds
.
add
(
userWxId
);
//发送的小程序
PersonalApplets
byId
=
personalAppletsDao
.
getById
(
item
.
getPersonalAppletsId
());
if
(
byId
==
null
){
return
;
}
GroupRobotDTO
info
=
wechatGroupConsr
.
getGroupRobotByRobotId
(
robotId
);
if
(
info
!=
null
)
{
sendMomentsDTO
.
setIsMasterWx
(
info
.
getMasterWx
());
sendMomentsDTO
.
setReceiveAccount
(
info
.
getMac
());
}
sendMomentsDTO
.
setMomentType
(
BusinessConstant
.
MomentTypeEnum
.
SEND_WX_MINI
);
sendMomentsDTO
.
setContent
(
byId
.
getAppletsId
());
//小程序id
sendMomentsDTO
.
setLink
(
byId
.
getAppletsUrl
());
//小程序访问地址
sendMomentsDTO
.
setImages
(
userWxIds
);
//发送人
sendMomentsDTO
.
setLinkTitle
(
byId
.
getSlogan
());
//小程序宣传语
sendMomentsDTO
.
setLinkDesc
(
byId
.
getSloganImgUrl
());
//小程序宣传图
sendMomentsDTO
.
setIp
(
ip
);
sendMomentsDTO
.
setMessageGroupId
(
uuid
);
sendMomentsDTO
.
setCounts
(
replyItems
.
size
());
sendMomentsDTO
.
setIndex
(
replyItems
.
indexOf
(
item
));
sendMomentsDTO
.
setCode
(
SendMessageTypeEnum
.
SELF
.
getCode
());
sendMomentsDTO
.
setRobotProcessType
(
robotProcessType
);
sendMomentsDTO
.
setAltId
(
robotId
);
sendMomentsDTO
.
setWxId
(
userWxId
);
wechatGroupConsr
.
sendMessage
(
JSON
.
toJSONString
(
sendMomentsDTO
));
}
}
}
}
}
...
...
pcloud-service-book/src/main/java/com/pcloud/book/personalstage/biz/impl/PersonalStageJumpBizImpl.java
View file @
3c1fe36c
...
@@ -28,6 +28,8 @@ import com.pcloud.book.personalstage.enums.PersonalStageUserStateEnum;
...
@@ -28,6 +28,8 @@ import com.pcloud.book.personalstage.enums.PersonalStageUserStateEnum;
import
com.pcloud.book.personalstage.vo.request.BaseStageJumpRequestVO
;
import
com.pcloud.book.personalstage.vo.request.BaseStageJumpRequestVO
;
import
com.pcloud.book.personalstage.vo.request.CreateStageJumpRequestVO
;
import
com.pcloud.book.personalstage.vo.request.CreateStageJumpRequestVO
;
import
com.pcloud.book.personalstage.vo.request.UpdateStageJumpRequestVO
;
import
com.pcloud.book.personalstage.vo.request.UpdateStageJumpRequestVO
;
import
com.pcloud.book.push.dao.PersonalAppletsDao
;
import
com.pcloud.book.push.entity.PersonalApplets
;
import
com.pcloud.book.util.common.YesOrNoEnums
;
import
com.pcloud.book.util.common.YesOrNoEnums
;
import
com.pcloud.common.core.aspect.ParamLog
;
import
com.pcloud.common.core.aspect.ParamLog
;
import
com.pcloud.common.core.biz.MessageBiz
;
import
com.pcloud.common.core.biz.MessageBiz
;
...
@@ -46,11 +48,7 @@ import com.pcloud.contentcenter.resource.dto.ResourceDTO;
...
@@ -46,11 +48,7 @@ import com.pcloud.contentcenter.resource.dto.ResourceDTO;
import
com.pcloud.feedback.paper.dto.PaperAndQuestionDto
;
import
com.pcloud.feedback.paper.dto.PaperAndQuestionDto
;
import
com.pcloud.wechatgroup.group.dto.GroupRobotDTO
;
import
com.pcloud.wechatgroup.group.dto.GroupRobotDTO
;
import
com.pcloud.wechatgroup.group.dto.GroupUserDTO
;
import
com.pcloud.wechatgroup.group.dto.GroupUserDTO
;
import
com.sdk.wxgroup.BaseVO
;
import
com.sdk.wxgroup.*
;
import
com.sdk.wxgroup.RobotProcessTypeEnum
;
import
com.sdk.wxgroup.SendMessageTypeEnum
;
import
com.sdk.wxgroup.SendPicMessageVO
;
import
com.sdk.wxgroup.SendTextMessageVO
;
import
com.sdk.wxgroup.im.mimc.BusinessConstant
;
import
com.sdk.wxgroup.im.mimc.BusinessConstant
;
import
com.sdk.wxgroup.im.mimc.dto.SendMomentsDTO
;
import
com.sdk.wxgroup.im.mimc.dto.SendMomentsDTO
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
...
@@ -114,6 +112,11 @@ public class PersonalStageJumpBizImpl implements PersonalStageJumpBiz {
...
@@ -114,6 +112,11 @@ public class PersonalStageJumpBizImpl implements PersonalStageJumpBiz {
@Autowired
@Autowired
private
CustomPlanBiz
customPlanBiz
;
private
CustomPlanBiz
customPlanBiz
;
@Autowired
private
PersonalAppletsDao
personalAppletsDao
;
@Value
(
"${wechat.group.link.prefix}"
)
@Value
(
"${wechat.group.link.prefix}"
)
private
String
wechatLinkPrefix
;
private
String
wechatLinkPrefix
;
//需求单链接替换符
//需求单链接替换符
...
@@ -260,23 +263,32 @@ public class PersonalStageJumpBizImpl implements PersonalStageJumpBiz {
...
@@ -260,23 +263,32 @@ public class PersonalStageJumpBizImpl implements PersonalStageJumpBiz {
}
}
List
<
Long
>
resourceIds
=
linkups
.
stream
().
filter
(
s
->(
ReplyTypeEnum
.
RESOURCE
.
value
.
equals
(
s
.
getReplyType
())
List
<
Long
>
resourceIds
=
linkups
.
stream
().
filter
(
s
->(
ReplyTypeEnum
.
RESOURCE
.
value
.
equals
(
s
.
getReplyType
())
||
ReplyTypeEnum
.
AUDIO
.
value
.
equals
(
s
.
getReplyType
()))&&
s
.
getResourceId
()!=
null
).
map
(
PersonalStageJumpLinkup:
:
getResourceId
).
collect
(
Collectors
.
toList
());
||
ReplyTypeEnum
.
AUDIO
.
value
.
equals
(
s
.
getReplyType
()))&&
s
.
getResourceId
()!=
null
).
map
(
PersonalStageJumpLinkup:
:
getResourceId
).
collect
(
Collectors
.
toList
());
if
(
ListUtils
.
isEmpty
(
resourceIds
)){
if
(!
ListUtils
.
isEmpty
(
resourceIds
)){
return
;
Map
<
Long
,
ResourceDTO
>
resourceDTOMap
=
resourceConsr
.
mapByIds
(
resourceIds
);
for
(
PersonalStageJumpLinkup
item:
linkups
)
{
Integer
type
=
item
.
getReplyType
();
if
(
ReplyTypeEnum
.
RESOURCE
.
value
.
equals
(
type
)
||
ReplyTypeEnum
.
AUDIO
.
value
.
equals
(
type
))
{
ResourceDTO
resourceDTO
=
resourceDTOMap
.
get
(
item
.
getResourceId
());
if
(
resourceDTO
!=
null
)
{
item
.
setResourceName
(
resourceDTO
.
getResourceName
());
item
.
setResourceUrl
(
resourceDTO
.
getFileUrl
());
item
.
setResourceTypeCode
(
resourceDTO
.
getTypeCode
());
item
.
setResourceTypeName
(
resourceDTO
.
getTypeName
());
item
.
setFileType
(
resourceDTO
.
getFileType
());
item
.
setResourcePdfItems
(
resourceDTO
.
getResourcePdfItems
());
item
.
setResourceOfficeItemDTOs
(
resourceDTO
.
getResourceOfficeItemDTOs
());
item
.
setFileSize
(
resourceDTO
.
getFileSize
());
}
}
}
}
}
Map
<
Long
,
ResourceDTO
>
resourceDTOMap
=
resourceConsr
.
mapByIds
(
resourceIds
);
for
(
PersonalStageJumpLinkup
item:
linkups
){
for
(
PersonalStageJumpLinkup
item:
linkups
){
Integer
type
=
item
.
getReplyType
();
Integer
type
=
item
.
getReplyType
();
if
(
ReplyTypeEnum
.
RESOURCE
.
value
.
equals
(
type
)||
ReplyTypeEnum
.
AUDIO
.
value
.
equals
(
type
)){
if
(
ReplyTypeEnum
.
PERSONALAPPLETS
.
value
.
equals
(
type
)){
ResourceDTO
resourceDTO
=
resourceDTOMap
.
get
(
item
.
getResourceId
());
if
(
item
.
getPersonalAppletsId
()!=
null
)
{
if
(
resourceDTO
!=
null
){
PersonalApplets
byId
=
personalAppletsDao
.
getById
(
item
.
getPersonalAppletsId
());
item
.
setResourceName
(
resourceDTO
.
getResourceName
());
item
.
setSlogan
(
byId
.
getSlogan
());
item
.
setResourceUrl
(
resourceDTO
.
getFileUrl
());
item
.
setSloganImgUrl
(
byId
.
getSloganImgUrl
());
item
.
setResourceTypeCode
(
resourceDTO
.
getTypeCode
());
item
.
setResourceTypeName
(
resourceDTO
.
getTypeName
());
item
.
setFileType
(
resourceDTO
.
getFileType
());
item
.
setResourcePdfItems
(
resourceDTO
.
getResourcePdfItems
());
item
.
setResourceOfficeItemDTOs
(
resourceDTO
.
getResourceOfficeItemDTOs
());
item
.
setFileSize
(
resourceDTO
.
getFileSize
());
}
}
}
}
}
}
...
@@ -558,6 +570,33 @@ public class PersonalStageJumpBizImpl implements PersonalStageJumpBiz {
...
@@ -558,6 +570,33 @@ public class PersonalStageJumpBizImpl implements PersonalStageJumpBiz {
fillMessageBaseInfo
(
sendMomentsDTO
,
linkupDelayDTO
);
fillMessageBaseInfo
(
sendMomentsDTO
,
linkupDelayDTO
);
wechatGroupConsr
.
sendMessage
(
JSON
.
toJSONString
(
sendMomentsDTO
));
wechatGroupConsr
.
sendMessage
(
JSON
.
toJSONString
(
sendMomentsDTO
));
}
}
}
else
if
(
ReplyTypeEnum
.
PERSONALAPPLETS
.
value
.
equals
(
jumpLinkup
.
getReplyType
())){
SendMomentsDTO
sendMomentsDTO
=
new
SendMomentsDTO
();
List
<
String
>
userWxIds
=
new
ArrayList
<>();
userWxIds
.
add
(
dto
.
getKey
());
//发送的小程序
PersonalApplets
byId
=
personalAppletsDao
.
getById
(
jumpLinkup
.
getPersonalAppletsId
());
if
(
byId
==
null
){
return
;
}
GroupRobotDTO
info
=
wechatGroupConsr
.
getGroupRobotByRobotId
(
linkupDelayDTO
.
getRobotId
());
if
(
info
!=
null
)
{
sendMomentsDTO
.
setIsMasterWx
(
info
.
getMasterWx
());
sendMomentsDTO
.
setReceiveAccount
(
info
.
getMac
());
}
sendMomentsDTO
.
setMomentType
(
BusinessConstant
.
MomentTypeEnum
.
SEND_WX_MINI
);
sendMomentsDTO
.
setContent
(
byId
.
getAppletsId
());
//小程序id
sendMomentsDTO
.
setLink
(
byId
.
getAppletsUrl
());
//小程序访问地址
sendMomentsDTO
.
setImages
(
userWxIds
);
//发送人
sendMomentsDTO
.
setLinkTitle
(
byId
.
getSlogan
());
//小程序宣传语
sendMomentsDTO
.
setLinkDesc
(
byId
.
getSloganImgUrl
());
//小程序宣传图
sendMomentsDTO
.
setIp
(
linkupDelayDTO
.
getIp
());
sendMomentsDTO
.
setCode
(
SendMessageTypeEnum
.
SELF
.
getCode
());
fillMessageBaseInfo
(
sendMomentsDTO
,
linkupDelayDTO
);
sendMomentsDTO
.
setAltId
(
linkupDelayDTO
.
getRobotId
());
sendMomentsDTO
.
setWxId
(
dto
.
getKey
());
wechatGroupConsr
.
sendMessage
(
JSON
.
toJSONString
(
sendMomentsDTO
));
}
}
}
}
...
...
pcloud-service-book/src/main/java/com/pcloud/book/personalstage/entity/PersonalStageJumpLinkup.java
View file @
3c1fe36c
...
@@ -22,7 +22,7 @@ public class PersonalStageJumpLinkup extends BaseEntity {
...
@@ -22,7 +22,7 @@ public class PersonalStageJumpLinkup extends BaseEntity {
@ApiModelProperty
(
"距离阶段开始时间"
)
@ApiModelProperty
(
"距离阶段开始时间"
)
private
Integer
toStageStartTime
;
private
Integer
toStageStartTime
;
@ApiModelProperty
(
"类型:1:文字;2:图片;6语音"
)
@ApiModelProperty
(
"类型:1:文字;2:图片;6语音
7小程序
"
)
private
Integer
replyType
;
private
Integer
replyType
;
@ApiModelProperty
(
"图片链接"
)
@ApiModelProperty
(
"图片链接"
)
...
@@ -55,4 +55,14 @@ public class PersonalStageJumpLinkup extends BaseEntity {
...
@@ -55,4 +55,14 @@ public class PersonalStageJumpLinkup extends BaseEntity {
@ApiModelProperty
(
"文件大小"
)
@ApiModelProperty
(
"文件大小"
)
private
Long
fileSize
;
private
Long
fileSize
;
@ApiModelProperty
(
"小程序主键id"
)
private
Long
personalAppletsId
;
@ApiModelProperty
(
"小程序宣传语"
)
private
String
slogan
;
@ApiModelProperty
(
"小程序宣传图"
)
private
String
sloganImgUrl
;
}
}
\ No newline at end of file
pcloud-service-book/src/main/java/com/pcloud/book/personalstage/entity/PersonalStageReplyItem.java
View file @
3c1fe36c
...
@@ -16,7 +16,7 @@ public class PersonalStageReplyItem extends BaseEntity {
...
@@ -16,7 +16,7 @@ public class PersonalStageReplyItem extends BaseEntity {
@ApiModelProperty
(
"定制化阶段回复id"
)
@ApiModelProperty
(
"定制化阶段回复id"
)
private
Long
personalStageReplyId
;
private
Long
personalStageReplyId
;
@ApiModelProperty
(
"回复类型 1 文字 2 图片 3 链接 4应用 5素材 6语音"
)
@ApiModelProperty
(
"回复类型 1 文字 2 图片 3 链接 4应用 5素材 6语音
7小程序
"
)
private
Integer
replyType
;
private
Integer
replyType
;
@ApiModelProperty
(
"内容"
)
@ApiModelProperty
(
"内容"
)
...
@@ -52,4 +52,13 @@ public class PersonalStageReplyItem extends BaseEntity {
...
@@ -52,4 +52,13 @@ public class PersonalStageReplyItem extends BaseEntity {
@ApiModelProperty
(
"文件大小"
)
@ApiModelProperty
(
"文件大小"
)
private
Long
fileSize
;
private
Long
fileSize
;
@ApiModelProperty
(
"小程序主键id"
)
private
Long
personalAppletsId
;
@ApiModelProperty
(
"小程序宣传语"
)
private
String
slogan
;
@ApiModelProperty
(
"小程序宣传图片"
)
private
String
sloganImgUrl
;
}
}
\ No newline at end of file
pcloud-service-book/src/main/java/com/pcloud/book/personalstage/vo/request/BaseStageJumpRequestVO.java
View file @
3c1fe36c
...
@@ -85,6 +85,7 @@ public abstract class BaseStageJumpRequestVO extends BaseRequestVO {
...
@@ -85,6 +85,7 @@ public abstract class BaseStageJumpRequestVO extends BaseRequestVO {
jumpLinkup
.
setReplyType
((
null
==
linkup
.
getReplyType
()
||
linkup
.
getReplyType
()
==
0
?
1
:
linkup
.
getReplyType
()));
jumpLinkup
.
setReplyType
((
null
==
linkup
.
getReplyType
()
||
linkup
.
getReplyType
()
==
0
?
1
:
linkup
.
getReplyType
()));
jumpLinkup
.
setPicUrl
(
linkup
.
getPicUrl
());
jumpLinkup
.
setPicUrl
(
linkup
.
getPicUrl
());
jumpLinkup
.
setResourceId
(
linkup
.
getResourceId
());
jumpLinkup
.
setResourceId
(
linkup
.
getResourceId
());
jumpLinkup
.
setPersonalAppletsId
(
linkup
.
getPersonalAppletsId
());
jumpLinkups
.
add
(
jumpLinkup
);
jumpLinkups
.
add
(
jumpLinkup
);
}
}
return
jumpLinkups
;
return
jumpLinkups
;
...
...
pcloud-service-book/src/main/java/com/pcloud/book/push/biz/SelfPushBiz.java
View file @
3c1fe36c
package
com
.
pcloud
.
book
.
push
.
biz
;
package
com
.
pcloud
.
book
.
push
.
biz
;
import
com.pcloud.book.group.vo.UserBookInfoVO
;
import
com.pcloud.book.group.vo.UserBookInfoVO
;
import
com.pcloud.book.push.dto.PersonalAppletsRecordDTO
;
import
com.pcloud.book.push.dto.SelfPushAddParamDTO
;
import
com.pcloud.book.push.dto.SelfPushAddParamDTO
;
import
com.pcloud.book.push.dto.SelfPushRecordDTO
;
import
com.pcloud.book.push.dto.SelfPushRecordDTO
;
import
com.pcloud.book.push.entity.PersonalApplets
;
import
com.pcloud.book.push.entity.SelfPush
;
import
com.pcloud.book.push.entity.SelfPush
;
import
com.pcloud.common.page.PageBeanNew
;
import
com.pcloud.common.page.PageBeanNew
;
import
java.util.List
;
/**
/**
* @描述:个人号群发
* @描述:个人号群发
* @作者:zhuyajie
* @作者:zhuyajie
...
@@ -62,4 +66,16 @@ public interface SelfPushBiz {
...
@@ -62,4 +66,16 @@ public interface SelfPushBiz {
void
updateSelfPush
(
Long
partyId
,
SelfPushAddParamDTO
addParamDTO
);
void
updateSelfPush
(
Long
partyId
,
SelfPushAddParamDTO
addParamDTO
);
SelfPush
getSelfPush
(
Long
pushId
);
SelfPush
getSelfPush
(
Long
pushId
);
void
createPersonalApplets
(
PersonalApplets
applets
);
void
deleteAppletsById
(
Long
id
);
void
updatePersonalApplets
(
PersonalApplets
applets
);
PageBeanNew
<
PersonalApplets
>
getAllApplets
(
String
appletsId
,
Integer
currentPage
,
Integer
numPerPage
);
PageBeanNew
<
PersonalAppletsRecordDTO
>
getSendAppletsRecords
(
Integer
currentPage
,
Integer
numPerPage
,
String
startTime
,
String
endTime
,
Integer
status
,
Long
partyId
);
PersonalApplets
getAppletsById
(
Long
id
);
}
}
pcloud-service-book/src/main/java/com/pcloud/book/push/biz/impl/SelfPushBizImpl.java
View file @
3c1fe36c
This diff is collapsed.
Click to expand it.
pcloud-service-book/src/main/java/com/pcloud/book/push/dao/PersonalAppletsDao.java
0 → 100644
View file @
3c1fe36c
package
com
.
pcloud
.
book
.
push
.
dao
;
import
com.pcloud.book.push.entity.PersonalApplets
;
import
com.pcloud.book.push.entity.SelfPush
;
import
com.pcloud.common.core.dao.BaseDao
;
import
java.util.List
;
/**
* @描述:小程序
* @作者:zengpo
* @创建时间:18:57 2020/03/16
* @版本:1.0
*/
public
interface
PersonalAppletsDao
extends
BaseDao
<
PersonalApplets
>{
List
<
PersonalApplets
>
getAllApplets
(
String
appletsId
);
}
pcloud-service-book/src/main/java/com/pcloud/book/push/dao/impl/PersonalAppletsDaoImpl.java
0 → 100644
View file @
3c1fe36c
package
com
.
pcloud
.
book
.
push
.
dao
.
impl
;
import
com.pcloud.book.push.dao.PersonalAppletsDao
;
import
com.pcloud.book.push.dao.SelfPushDao
;
import
com.pcloud.book.push.entity.PersonalApplets
;
import
com.pcloud.book.push.entity.SelfPush
;
import
com.pcloud.common.core.dao.BaseDaoImpl
;
import
org.springframework.stereotype.Component
;
import
java.lang.reflect.MalformedParameterizedTypeException
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
/**
* @描述:个人号群发
* @作者:zhuyajie
* @创建时间:18:57 2019/11/26
* @版本:1.0
*/
@Component
(
"personalAppletsDao"
)
public
class
PersonalAppletsDaoImpl
extends
BaseDaoImpl
<
PersonalApplets
>
implements
PersonalAppletsDao
{
@Override
public
List
<
PersonalApplets
>
getAllApplets
(
String
appletsId
)
{
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"appletsId"
,
appletsId
);
return
getSessionTemplate
().
selectList
(
getStatement
(
"getAllApplets"
),
map
);
}
}
pcloud-service-book/src/main/java/com/pcloud/book/push/dto/PersonalAppletsRecordDTO.java
0 → 100644
View file @
3c1fe36c
package
com
.
pcloud
.
book
.
push
.
dto
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.pcloud.book.push.entity.SelfPushItem
;
import
com.pcloud.common.dto.BaseDto
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
java.util.Date
;
import
java.util.List
;
/**
* @描述:个人号群发记录
* @作者:zhuyajie
* @创建时间:16:50 2019/11/27
* @版本:1.0
*/
@Data
public
class
PersonalAppletsRecordDTO
extends
BaseDto
{
@ApiModelProperty
(
"群发小号id"
)
private
String
altId
;
@ApiModelProperty
(
"小号名称"
)
private
String
robotName
;
@ApiModelProperty
(
"推送id"
)
private
Long
pushId
;
@ApiModelProperty
(
"推送项id"
)
private
Long
pushItemId
;
@ApiModelProperty
(
"推送内容项类型:1文本,2链接,3应用,4图片"
)
private
Integer
itemType
;
@ApiModelProperty
(
"发送状态(0发送中1发送成功2发送失败)"
)
private
Integer
pushStatus
;
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
,
timezone
=
"GMT+8"
)
@ApiModelProperty
(
"创建时间"
)
private
Date
createTime
;
@ApiModelProperty
(
"发送好友数量"
)
private
Integer
userCount
;
@JsonFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
,
timezone
=
"GMT+8"
)
@ApiModelProperty
(
"发送时间"
)
private
Date
sendTime
;
@ApiModelProperty
(
"创建人"
)
private
Long
createUser
;
@ApiModelProperty
(
"创建人账号"
)
private
String
userName
;
@ApiModelProperty
(
"计划发送时间"
)
private
String
pushSendTime
;
@ApiModelProperty
(
"周几"
)
private
String
weekDays
;
@ApiModelProperty
(
"时间推送类型"
)
private
Integer
pushType
;
@JsonFormat
(
pattern
=
"yyyy-MM-dd"
,
timezone
=
"GMT+8"
)
@ApiModelProperty
(
"开始时间"
)
private
Date
startTime
;
@JsonFormat
(
pattern
=
"yyyy-MM-dd"
,
timezone
=
"GMT+8"
)
@ApiModelProperty
(
"结束时间"
)
private
Date
endTime
;
@ApiModelProperty
(
"发送时间拼接"
)
private
String
realSendTime
;
@ApiModelProperty
(
"分类名称"
)
private
String
classifyName
;
@ApiModelProperty
(
"小号分类id"
)
private
Integer
classifyId
;
@ApiModelProperty
(
"小号编号"
)
private
String
uniqueNumber
;
@ApiModelProperty
(
"小程序主键id"
)
private
Long
personalAppletsId
;
@ApiModelProperty
(
"小程序id"
)
private
String
appletsId
;
@ApiModelProperty
(
"小程序访问地址"
)
private
String
appletsUrl
;
@ApiModelProperty
(
"小程序宣传语"
)
private
String
slogan
;
@ApiModelProperty
(
"小程序宣图片"
)
private
String
sloganImgUrl
;
}
pcloud-service-book/src/main/java/com/pcloud/book/push/entity/PersonalApplets.java
0 → 100644
View file @
3c1fe36c
package
com
.
pcloud
.
book
.
push
.
entity
;
import
com.pcloud.common.entity.BaseEntity
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
/**
* @Description
* @Author zengpo
* @Date 2020/03/16 16:46
**/
@ApiModel
(
"消息推送项模型"
)
@Data
public
class
PersonalApplets
extends
BaseEntity
{
@ApiModelProperty
(
"小程序id"
)
private
String
appletsId
;
@ApiModelProperty
(
"小程序宣传语"
)
private
String
slogan
;
@ApiModelProperty
(
"小程序宣传图片"
)
private
String
sloganImgUrl
;
@ApiModelProperty
(
"小程序访问地址"
)
private
String
appletsUrl
;
}
pcloud-service-book/src/main/java/com/pcloud/book/push/entity/SelfPushItem.java
View file @
3c1fe36c
...
@@ -19,10 +19,10 @@ public class SelfPushItem extends BaseEntity{
...
@@ -19,10 +19,10 @@ public class SelfPushItem extends BaseEntity{
@ApiModelProperty
(
"推送id"
)
@ApiModelProperty
(
"推送id"
)
private
Long
pushId
;
private
Long
pushId
;
@ApiModelProperty
(
"推送内容项类型:1文本,2链接,3应用,4图片5素材"
)
@ApiModelProperty
(
"推送内容项类型:1文本,2链接,3应用,4图片5素材
,6小程序
"
)
private
Integer
itemType
;
private
Integer
itemType
;
@ApiModelProperty
(
"类型 1 文字 2 图片 3 链接 4应用 5素材"
)
@ApiModelProperty
(
"类型 1 文字 2 图片 3 链接 4应用 5素材
6小程序
"
)
private
Integer
replyType
;
private
Integer
replyType
;
@ApiModelProperty
(
"文本内容"
)
@ApiModelProperty
(
"文本内容"
)
...
@@ -79,6 +79,10 @@ public class SelfPushItem extends BaseEntity{
...
@@ -79,6 +79,10 @@ public class SelfPushItem extends BaseEntity{
@ApiModelProperty
(
"资源id"
)
@ApiModelProperty
(
"资源id"
)
private
Long
resourceId
;
private
Long
resourceId
;
@ApiModelProperty
(
"小程序主键id"
)
private
Long
personalAppletsId
;
@ApiModelProperty
(
"资源链接"
)
@ApiModelProperty
(
"资源链接"
)
private
String
resourceUrl
;
private
String
resourceUrl
;
...
...
pcloud-service-book/src/main/java/com/pcloud/book/push/enums/ItemTypeEnum.java
View file @
3c1fe36c
...
@@ -26,7 +26,12 @@ public enum ItemTypeEnum {
...
@@ -26,7 +26,12 @@ public enum ItemTypeEnum {
/**
/**
* 资源
* 资源
*/
*/
RESOURCE
(
5
);
RESOURCE
(
5
),
/**
* 小程序
*/
PERSANALAPPLETS
(
7
);
public
final
Integer
value
;
public
final
Integer
value
;
...
...
pcloud-service-book/src/main/java/com/pcloud/book/push/facade/SelfPushFacade.java
View file @
3c1fe36c
...
@@ -4,8 +4,10 @@ import com.pcloud.book.base.exception.BookBizException;
...
@@ -4,8 +4,10 @@ import com.pcloud.book.base.exception.BookBizException;
import
com.pcloud.book.group.vo.UserBookInfoVO
;
import
com.pcloud.book.group.vo.UserBookInfoVO
;
import
com.pcloud.book.push.biz.SelfPushBiz
;
import
com.pcloud.book.push.biz.SelfPushBiz
;
import
com.pcloud.book.push.check.PushCheck
;
import
com.pcloud.book.push.check.PushCheck
;
import
com.pcloud.book.push.dto.PersonalAppletsRecordDTO
;
import
com.pcloud.book.push.dto.SelfPushAddParamDTO
;
import
com.pcloud.book.push.dto.SelfPushAddParamDTO
;
import
com.pcloud.book.push.dto.SelfPushRecordDTO
;
import
com.pcloud.book.push.dto.SelfPushRecordDTO
;
import
com.pcloud.book.push.entity.PersonalApplets
;
import
com.pcloud.common.core.constant.SystemCode
;
import
com.pcloud.common.core.constant.SystemCode
;
import
com.pcloud.common.dto.ResponseDto
;
import
com.pcloud.common.dto.ResponseDto
;
import
com.pcloud.common.page.PageBeanNew
;
import
com.pcloud.common.page.PageBeanNew
;
...
@@ -132,4 +134,87 @@ public class SelfPushFacade {
...
@@ -132,4 +134,87 @@ public class SelfPushFacade {
SessionUtil
.
getInfoToken4Redis
(
token
);
SessionUtil
.
getInfoToken4Redis
(
token
);
return
new
ResponseDto
<>(
selfPushBiz
.
getSelfPush
(
pushId
));
return
new
ResponseDto
<>(
selfPushBiz
.
getSelfPush
(
pushId
));
}
}
@ApiOperation
(
"创建小程序"
)
@PostMapping
(
"createPersonalApplets"
)
public
ResponseDto
<?>
createPersonalApplets
(
@RequestHeader
(
"token"
)
String
token
,
@RequestBody
@ApiParam
PersonalApplets
applets
)
throws
PermissionException
{
SessionUtil
.
getInfoToken4Redis
(
token
);
if
(
applets
!=
null
&&
applets
.
getAppletsId
()==
null
)
{
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"缺失小程序id"
);
}
selfPushBiz
.
createPersonalApplets
(
applets
);
return
new
ResponseDto
<>();
}
@ApiOperation
(
"删除小程序"
)
@GetMapping
(
"deleteAppletsById"
)
public
ResponseDto
<?>
deleteAppletsById
(
@RequestHeader
(
"token"
)
String
token
,
@RequestParam
(
"id"
)
Long
id
)
throws
PermissionException
{
SessionUtil
.
getInfoToken4Redis
(
token
);
selfPushBiz
.
deleteAppletsById
(
id
);
return
new
ResponseDto
<>();
}
@ApiOperation
(
"更新小程序"
)
@PostMapping
(
"updatePersonalApplets"
)
public
ResponseDto
<?>
updatePersonalApplets
(
@RequestHeader
(
"token"
)
String
token
,
@RequestBody
@ApiParam
PersonalApplets
applets
)
throws
PermissionException
{
SessionUtil
.
getInfoToken4Redis
(
token
);
if
(
applets
!=
null
&&
applets
.
getId
()==
null
)
{
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"缺失小程序主键id"
);
}
selfPushBiz
.
updatePersonalApplets
(
applets
);
return
new
ResponseDto
<>();
}
@ApiOperation
(
"查询所有小程序"
)
@GetMapping
(
"getAllApplets"
)
public
ResponseDto
<?>
getAllApplets
(
@RequestHeader
(
"token"
)
String
token
,
@RequestParam
(
value
=
"appletsId"
,
required
=
false
)
@ApiParam
(
"小程序id"
)
String
appletsId
,
@RequestParam
(
"currentPage"
)
@ApiParam
(
"当前页"
)
Integer
currentPage
,
@RequestParam
(
"numPerPage"
)
@ApiParam
(
"每页数量"
)
Integer
numPerPage
)
throws
PermissionException
{
SessionUtil
.
getInfoToken4Redis
(
token
);
if
(
null
==
currentPage
||
null
==
numPerPage
)
{
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"缺少分页参数"
);
}
PageBeanNew
<
PersonalApplets
>
pageBeanNew
=
selfPushBiz
.
getAllApplets
(
appletsId
,
currentPage
,
numPerPage
);
return
new
ResponseDto
<>(
pageBeanNew
);
}
@ApiOperation
(
"根据小程序主键id获取小程序信息"
)
@GetMapping
(
"getAppletsById"
)
public
ResponseDto
<?>
getAppletsById
(
@RequestHeader
(
"token"
)
String
token
,
@RequestParam
(
value
=
"id"
,
required
=
true
)
@ApiParam
(
"小程序主键id"
)
Long
id
)
throws
PermissionException
{
SessionUtil
.
getInfoToken4Redis
(
token
);
PersonalApplets
personalApplets
=
selfPushBiz
.
getAppletsById
(
id
);
return
new
ResponseDto
<>(
personalApplets
);
}
@ApiOperation
(
"查询小程序发送记录"
)
@GetMapping
(
"getSendAppletsRecords"
)
public
ResponseDto
<
PageBeanNew
<
PersonalAppletsRecordDTO
>>
getSendAppletsRecords
(
@RequestHeader
(
"token"
)
String
token
,
@RequestParam
(
"currentPage"
)
@ApiParam
(
"当前页"
)
Integer
currentPage
,
@RequestParam
(
"numPerPage"
)
@ApiParam
(
"每页数量"
)
Integer
numPerPage
,
@RequestParam
(
value
=
"startTime"
,
required
=
false
)
@ApiParam
(
"开始时间"
)
String
startTime
,
@RequestParam
(
value
=
"endTime"
,
required
=
false
)
@ApiParam
(
"结束时间"
)
String
endTime
,
@RequestParam
(
value
=
"status"
,
required
=
false
)
@ApiParam
(
"发送状态(1发送中2发送成功3发送失败)"
)
Integer
status
)
throws
PermissionException
{
Map
<
String
,
Object
>
map
=
SessionUtil
.
getToken4Redis
(
token
);
if
(
null
==
currentPage
||
null
==
numPerPage
)
{
throw
new
BookBizException
(
BookBizException
.
PARAM_IS_NULL
,
"缺少分页参数"
);
}
Long
partyId
=
(
Long
)
map
.
get
(
SessionUtil
.
PARTY_ID
);
if
(
partyId
==
0
){
String
isSystem
=
(
String
)
map
.
get
(
SessionUtil
.
IS_SYSTEM
);
if
(
"0"
.
equals
(
isSystem
))
{
partyId
=
(
Long
)
map
.
get
(
SessionUtil
.
MEMBER_ID
);
}
}
PageBeanNew
<
PersonalAppletsRecordDTO
>
pageBeanNew
=
selfPushBiz
.
getSendAppletsRecords
(
currentPage
,
numPerPage
,
startTime
,
endTime
,
status
,
partyId
);
return
new
ResponseDto
<>(
pageBeanNew
);
}
}
}
pcloud-service-book/src/main/resources/mapper/pcloudkeyword/PcloudRobotWelcome.Mapper.xml
View file @
3c1fe36c
...
@@ -14,11 +14,12 @@
...
@@ -14,11 +14,12 @@
<result
column=
"file_size"
property=
"fileSize"
jdbcType=
"BIGINT"
/>
<result
column=
"file_size"
property=
"fileSize"
jdbcType=
"BIGINT"
/>
<result
column=
"resource_id"
property=
"resourceId"
jdbcType=
"INTEGER"
/>
<result
column=
"resource_id"
property=
"resourceId"
jdbcType=
"INTEGER"
/>
<result
column=
"create_time"
property=
"createTime"
jdbcType=
"TIMESTAMP"
/>
<result
column=
"create_time"
property=
"createTime"
jdbcType=
"TIMESTAMP"
/>
<result
column=
"personal_applets_id"
property=
"personalAppletsId"
jdbcType=
"BIGINT"
/>
</resultMap>
</resultMap>
<sql
id=
"Base_Column_List"
>
<sql
id=
"Base_Column_List"
>
id, pcloud_robot_id, pcloud_classify_id, reply_type, content, pic_url, file_name, file_type, file_url,
id, pcloud_robot_id, pcloud_classify_id, reply_type, content, pic_url, file_name, file_type, file_url,
file_size, resource_id, create_time
file_size, resource_id, create_time
,personal_applets_id
</sql>
</sql>
<!--批量插入-->
<!--批量插入-->
...
@@ -34,7 +35,8 @@
...
@@ -34,7 +35,8 @@
file_url,
file_url,
file_size,
file_size,
resource_id,
resource_id,
create_time
create_time,
personal_applets_id
) values
) values
<foreach
collection=
"list"
item=
"item"
index=
"index"
separator=
","
>
<foreach
collection=
"list"
item=
"item"
index=
"index"
separator=
","
>
(
(
...
@@ -48,7 +50,8 @@
...
@@ -48,7 +50,8 @@
#{item.fileUrl,jdbcType=VARCHAR},
#{item.fileUrl,jdbcType=VARCHAR},
#{item.fileSize,jdbcType=BIGINT},
#{item.fileSize,jdbcType=BIGINT},
#{item.resourceId,jdbcType=BIGINT},
#{item.resourceId,jdbcType=BIGINT},
NOW()
NOW(),
#{item.personalAppletsId,jdbcType=BIGINT}
)
)
</foreach>
</foreach>
</insert>
</insert>
...
...
pcloud-service-book/src/main/resources/mapper/personalstage/PersonalStageJumpLinkup.xml
View file @
3c1fe36c
...
@@ -10,10 +10,11 @@
...
@@ -10,10 +10,11 @@
<result
property=
"replyType"
column=
"reply_type"
jdbcType=
"INTEGER"
/>
<result
property=
"replyType"
column=
"reply_type"
jdbcType=
"INTEGER"
/>
<result
property=
"picUrl"
column=
"pic_url"
jdbcType=
"VARCHAR"
/>
<result
property=
"picUrl"
column=
"pic_url"
jdbcType=
"VARCHAR"
/>
<result
property=
"resourceId"
column=
"resource_id"
jdbcType=
"BIGINT"
/>
<result
property=
"resourceId"
column=
"resource_id"
jdbcType=
"BIGINT"
/>
<result
column=
"personal_applets_id"
property=
"personalAppletsId"
jdbcType=
"BIGINT"
/>
</resultMap>
</resultMap>
<sql
id=
"Base_Column_List"
>
<sql
id=
"Base_Column_List"
>
id, personal_stage_jump_id, linkup_content, to_stage_start_time, reply_type, pic_url, resource_id
id, personal_stage_jump_id, linkup_content, to_stage_start_time, reply_type, pic_url, resource_id
,personal_applets_id
</sql>
</sql>
<select
id=
"getById"
resultMap=
"BaseResultMap"
parameterType=
"java.lang.Long"
>
<select
id=
"getById"
resultMap=
"BaseResultMap"
parameterType=
"java.lang.Long"
>
...
@@ -58,7 +59,8 @@
...
@@ -58,7 +59,8 @@
to_stage_start_time,
to_stage_start_time,
reply_type,
reply_type,
pic_url,
pic_url,
resource_id
resource_id,
personal_applets_id
</trim>
</trim>
<trim
prefix=
"values ("
suffix=
")"
suffixOverrides=
","
>
<trim
prefix=
"values ("
suffix=
")"
suffixOverrides=
","
>
#{personalStageJumpId,jdbcType=BIGINT},
#{personalStageJumpId,jdbcType=BIGINT},
...
@@ -66,7 +68,8 @@
...
@@ -66,7 +68,8 @@
#{toStageStartTime,jdbcType=INTEGER},
#{toStageStartTime,jdbcType=INTEGER},
#{replyType,jdbcType=INTEGER},
#{replyType,jdbcType=INTEGER},
#{picUrl,jdbcType=VARCHAR},
#{picUrl,jdbcType=VARCHAR},
#{resourceId,jdbcType=BIGINT}
#{resourceId,jdbcType=BIGINT},
#{personalAppletsId,jdbcType=BIGINT}
</trim>
</trim>
</insert>
</insert>
...
@@ -78,7 +81,8 @@
...
@@ -78,7 +81,8 @@
to_stage_start_time,
to_stage_start_time,
reply_type,
reply_type,
pic_url,
pic_url,
resource_id
resource_id,
personal_applets_id
</trim>
</trim>
values
values
<foreach
collection=
"list"
item=
"item"
separator=
","
>
<foreach
collection=
"list"
item=
"item"
separator=
","
>
...
@@ -88,7 +92,8 @@
...
@@ -88,7 +92,8 @@
#{item.toStageStartTime,jdbcType=INTEGER},
#{item.toStageStartTime,jdbcType=INTEGER},
#{item.replyType,jdbcType=INTEGER},
#{item.replyType,jdbcType=INTEGER},
#{item.picUrl,jdbcType=VARCHAR},
#{item.picUrl,jdbcType=VARCHAR},
#{item.resourceId,jdbcType=BIGINT}
#{item.resourceId,jdbcType=BIGINT},
#{item.personalAppletsId,jdbcType=BIGINT}
</trim>
</trim>
</foreach>
</foreach>
</insert>
</insert>
...
...
pcloud-service-book/src/main/resources/mapper/personalstage/PersonalStageReplyItem.xml
View file @
3c1fe36c
...
@@ -10,10 +10,11 @@
...
@@ -10,10 +10,11 @@
<result
property=
"picUrl"
column=
"pic_url"
jdbcType=
"VARCHAR"
/>
<result
property=
"picUrl"
column=
"pic_url"
jdbcType=
"VARCHAR"
/>
<result
property=
"resourceId"
column=
"resource_id"
jdbcType=
"BIGINT"
/>
<result
property=
"resourceId"
column=
"resource_id"
jdbcType=
"BIGINT"
/>
<result
property=
"createTime"
column=
"create_time"
jdbcType=
"TIMESTAMP"
/>
<result
property=
"createTime"
column=
"create_time"
jdbcType=
"TIMESTAMP"
/>
<result
column=
"personal_applets_id"
property=
"personalAppletsId"
jdbcType=
"BIGINT"
/>
</resultMap>
</resultMap>
<sql
id=
"Base_Column_List"
>
<sql
id=
"Base_Column_List"
>
id, personal_stage_reply_id, reply_type, content, pic_url, resource_id, create_time
id, personal_stage_reply_id, reply_type, content, pic_url, resource_id, create_time
,personal_applets_id
</sql>
</sql>
<select
id=
"getById"
resultMap=
"BaseResultMap"
parameterType=
"java.lang.Long"
>
<select
id=
"getById"
resultMap=
"BaseResultMap"
parameterType=
"java.lang.Long"
>
...
@@ -36,7 +37,8 @@
...
@@ -36,7 +37,8 @@
content,
content,
pic_url,
pic_url,
resource_id,
resource_id,
create_time
create_time,
personal_applets_id
</trim>
</trim>
<trim
prefix=
"values ("
suffix=
")"
suffixOverrides=
","
>
<trim
prefix=
"values ("
suffix=
")"
suffixOverrides=
","
>
#{personalStageReplyId,jdbcType=BIGINT},
#{personalStageReplyId,jdbcType=BIGINT},
...
@@ -44,7 +46,8 @@
...
@@ -44,7 +46,8 @@
#{content,jdbcType=VARCHAR},
#{content,jdbcType=VARCHAR},
#{picUrl,jdbcType=VARCHAR},
#{picUrl,jdbcType=VARCHAR},
#{resourceId,jdbcType=BIGINT},
#{resourceId,jdbcType=BIGINT},
NOW()
NOW(),
#{personalAppletsId,jdbcType=BIGINT}
</trim>
</trim>
</insert>
</insert>
...
@@ -55,7 +58,8 @@
...
@@ -55,7 +58,8 @@
content,
content,
pic_url,
pic_url,
resource_id,
resource_id,
create_time
create_time,
personal_applets_id
) values
) values
<foreach
collection=
"list"
item=
"item"
index=
"index"
separator=
","
>
<foreach
collection=
"list"
item=
"item"
index=
"index"
separator=
","
>
(
(
...
@@ -64,7 +68,8 @@
...
@@ -64,7 +68,8 @@
#{item.content,jdbcType=VARCHAR},
#{item.content,jdbcType=VARCHAR},
#{item.picUrl,jdbcType=VARCHAR},
#{item.picUrl,jdbcType=VARCHAR},
#{item.resourceId,jdbcType=BIGINT},
#{item.resourceId,jdbcType=BIGINT},
NOW()
NOW(),
#{item.personalAppletsId,jdbcType=BIGINT}
)
)
</foreach>
</foreach>
</insert>
</insert>
...
...
pcloud-service-book/src/main/resources/mapper/push/PersonalAppletsMapper.xml
0 → 100644
View file @
3c1fe36c
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper
namespace=
"com.pcloud.book.push.dao.impl.PersonalAppletsDaoImpl"
>
<resultMap
id=
"BaseResultMap"
type=
"com.pcloud.book.push.entity.PersonalApplets"
>
<id
column=
"id"
property=
"id"
jdbcType=
"BIGINT"
/>
<result
column=
"applets_id"
property=
"appletsId"
jdbcType=
"VARCHAR"
/>
<result
column=
"slogan"
property=
"slogan"
jdbcType=
"VARCHAR"
/>
<result
column=
"slogan_img_url"
property=
"sloganImgUrl"
jdbcType=
"VARCHAR"
/>
<result
column=
"applets_url"
property=
"appletsUrl"
jdbcType=
"VARCHAR"
/>
<result
column=
"create_time"
property=
"createTime"
jdbcType=
"TIMESTAMP"
/>
<result
column=
"update_time"
property=
"updateTime"
jdbcType=
"TIMESTAMP"
/>
</resultMap>
<sql
id=
"Base_Column_List"
>
id, applets_id, slogan, slogan_img_url, applets_url, create_time, update_time
</sql>
<insert
id=
"insert"
parameterType=
"com.pcloud.book.push.entity.PersonalApplets"
useGeneratedKeys=
"true"
keyProperty=
"id"
>
insert into personal_applets ( applets_id,
slogan, slogan_img_url, applets_url,
create_time, update_time
)
values (#{appletsId,jdbcType=VARCHAR}, #{slogan,jdbcType=VARCHAR},
#{sloganImgUrl,jdbcType=VARCHAR}, #{appletsUrl,jdbcType=VARCHAR},
now(), now()
)
</insert>
<select
id=
"selectById"
resultMap=
"BaseResultMap"
>
select
<include
refid=
"Base_Column_List"
/>
from personal_applets where id=#{id}
</select>
<select
id=
"getAllApplets"
parameterType=
"map"
resultMap=
"BaseResultMap"
>
select
<include
refid=
"Base_Column_List"
/>
from personal_applets
where 1=1
<if
test=
"appletsId!=null"
>
and applets_id=#{appletsId}
</if>
order by create_time desc
</select>
<update
id=
"update"
parameterType=
"com.pcloud.book.push.entity.PersonalApplets"
>
update personal_applets
<set>
<if
test=
"appletsId != null"
>
applets_id = #{appletsId,jdbcType=VARCHAR},
</if>
<if
test=
"slogan != null"
>
slogan = #{slogan,jdbcType=VARCHAR},
</if>
<if
test=
"sloganImgUrl != null"
>
slogan_img_url = #{sloganImgUrl,jdbcType=VARCHAR},
</if>
<if
test=
"appletsUrl != null"
>
applets_url = #{appletsUrl,jdbcType=VARCHAR},
</if>
update_time = NOW(),
</set>
where id = #{id,jdbcType=BIGINT}
</update>
<delete
id=
"deleteById"
>
delete from personal_applets where id=#{id}
</delete>
</mapper>
\ No newline at end of file
pcloud-service-book/src/main/resources/mapper/push/SelfPushItemMapper.xml
View file @
3c1fe36c
...
@@ -22,12 +22,13 @@
...
@@ -22,12 +22,13 @@
<result
column=
"update_time"
property=
"updateTime"
jdbcType=
"TIMESTAMP"
/>
<result
column=
"update_time"
property=
"updateTime"
jdbcType=
"TIMESTAMP"
/>
<result
column=
"send_time"
property=
"sendTime"
jdbcType=
"TIMESTAMP"
/>
<result
column=
"send_time"
property=
"sendTime"
jdbcType=
"TIMESTAMP"
/>
<result
column=
"resource_id"
property=
"resourceId"
jdbcType=
"BIGINT"
/>
<result
column=
"resource_id"
property=
"resourceId"
jdbcType=
"BIGINT"
/>
<result
column=
"personal_applets_id"
property=
"personalAppletsId"
jdbcType=
"BIGINT"
/>
</resultMap>
</resultMap>
<sql
id=
"Base_Column_List"
>
<sql
id=
"Base_Column_List"
>
id, push_id, item_type, text_content, link_url, link_title, link_description,
id, push_id, item_type, text_content, link_url, link_title, link_description,
link_image_url, image_url, app_id, app_url, product_id, product_url, push_status,
link_image_url, image_url, app_id, app_url, product_id, product_url, push_status,
create_user, create_time, update_user, update_time, send_time, resource_id
create_user, create_time, update_user, update_time, send_time, resource_id
,personal_applets_id
</sql>
</sql>
<insert
id=
"insert"
parameterType=
"com.pcloud.book.push.entity.SelfPushItem"
useGeneratedKeys=
"true"
keyProperty=
"id"
>
<insert
id=
"insert"
parameterType=
"com.pcloud.book.push.entity.SelfPushItem"
useGeneratedKeys=
"true"
keyProperty=
"id"
>
...
@@ -36,14 +37,14 @@
...
@@ -36,14 +37,14 @@
link_description, link_image_url, image_url,
link_description, link_image_url, image_url,
app_id, app_url, product_id,
app_id, app_url, product_id,
product_url, push_status, create_user,
product_url, push_status, create_user,
create_time, update_user, update_time, send_time, resource_id
create_time, update_user, update_time, send_time, resource_id
,personal_applets_id
)
)
values (#{pushId,jdbcType=BIGINT}, #{itemType,jdbcType=INTEGER},
values (#{pushId,jdbcType=BIGINT}, #{itemType,jdbcType=INTEGER},
#{textContent,jdbcType=VARCHAR}, #{linkUrl,jdbcType=VARCHAR}, #{linkTitle,jdbcType=VARCHAR},
#{textContent,jdbcType=VARCHAR}, #{linkUrl,jdbcType=VARCHAR}, #{linkTitle,jdbcType=VARCHAR},
#{linkDescription,jdbcType=VARCHAR}, #{linkImageUrl,jdbcType=VARCHAR}, #{imageUrl,jdbcType=VARCHAR},
#{linkDescription,jdbcType=VARCHAR}, #{linkImageUrl,jdbcType=VARCHAR}, #{imageUrl,jdbcType=VARCHAR},
#{appId,jdbcType=BIGINT}, #{appUrl,jdbcType=VARCHAR}, #{productId,jdbcType=BIGINT},
#{appId,jdbcType=BIGINT}, #{appUrl,jdbcType=VARCHAR}, #{productId,jdbcType=BIGINT},
#{productUrl,jdbcType=VARCHAR}, #{pushStatus,jdbcType=INTEGER}, #{createUser,jdbcType=BIGINT},
#{productUrl,jdbcType=VARCHAR}, #{pushStatus,jdbcType=INTEGER}, #{createUser,jdbcType=BIGINT},
now(), #{updateUser,jdbcType=BIGINT}, now(), #{sendTime}, #{resourceId}
now(), #{updateUser,jdbcType=BIGINT}, now(), #{sendTime}, #{resourceId}
,#{personalAppletsId}
)
)
</insert>
</insert>
...
@@ -68,7 +69,8 @@
...
@@ -68,7 +69,8 @@
update_user,
update_user,
update_time,
update_time,
send_time,
send_time,
resource_id
resource_id,
personal_applets_id
) values
) values
<foreach
collection=
"list"
item=
"item"
index=
"index"
separator=
","
>
<foreach
collection=
"list"
item=
"item"
index=
"index"
separator=
","
>
(
(
...
@@ -90,7 +92,8 @@
...
@@ -90,7 +92,8 @@
#{item.updateUser,jdbcType=BIGINT},
#{item.updateUser,jdbcType=BIGINT},
NOW(),
NOW(),
#{item.sendTime},
#{item.sendTime},
#{item.resourceId}
#{item.resourceId},
#{item.personalAppletsId}
)
)
</foreach>
</foreach>
</insert>
</insert>
...
@@ -151,6 +154,56 @@
...
@@ -151,6 +154,56 @@
i.create_time DESC, i.id DESC
i.create_time DESC, i.id DESC
</select>
</select>
<select
id=
"getSendAppletsRecords"
parameterType=
"map"
resultType=
"com.pcloud.book.push.dto.PersonalAppletsRecordDTO"
>
SELECT
p.alt_id altId,
p.id pushId,
i.id pushItemId,
i.item_type itemType,
i.push_status pushStatus,
i.create_time createTime,
min(i.send_time) sendTime,
p.create_user createUser,
p.start_time startTime,
p.end_time endTime,
p.push_send_time pushSendTime,
p.week_days weekDays,
p.push_type pushType,
a.id personalAppletsId,
a.applets_id appletsId,
a.applets_url appletsUrl,
a.slogan ,
a.slogan_img_url sloganImgUrl,
(select count(1) from self_push_user where push_id=p.id) userCount
FROM
self_push_item i
LEFT JOIN self_push p ON i.push_id = p.id
LEFT JOIN personal_applets a ON a.id=i.personal_applets_id
WHERE
1 = 1
and i.personal_applets_id is not null
<if
test=
"startTime != null and endTime != null"
>
AND (
(i.send_time BETWEEN #{startTime} AND #{endTime} )
OR (p.start_time >= #{startTime} AND p.end_time
<
= #{endTime})
)
</if>
<if
test=
"pushStatus != null"
>
AND i.push_status = #{pushStatus}
</if>
<choose>
<when
test=
"partyId == 0"
>
AND p.alt_id IS NOT NULL AND p.alt_id !=""
</when>
<otherwise>
AND p.create_user = #{partyId}
</otherwise>
</choose>
group by push_id
ORDER BY
i.create_time DESC, i.id DESC
</select>
<update
id=
"updatePushStatusByPushId"
parameterType=
"map"
>
<update
id=
"updatePushStatusByPushId"
parameterType=
"map"
>
UPDATE self_push_item
UPDATE self_push_item
SET push_status = #{pushStatus}
SET push_status = #{pushStatus}
...
...
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