Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
仟微科技
Link Wechat
提交
1eca46e2
Link Wechat
项目概览
仟微科技
/
Link Wechat
通知
48
Star
3
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
1
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
Link Wechat
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
1
合并请求
1
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
1eca46e2
编写于
11月 20, 2020
作者:
S
sunxiwang
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
1、员工活码列表查询sql调整2、添加批量生成员工二维码接口3、员工二维码详情接口返回参数新增素材数据4、生成员工二维码校验,不可重复新增
上级
7e8b677f
变更
9
隐藏空白更改
内联
并排
Showing
9 changed file
with
189 addition
and
64 deletion
+189
-64
linkwe-admin/src/main/java/com/linkwechat/web/controller/wecom/WeEmpleCodeController.java
...inkwechat/web/controller/wecom/WeEmpleCodeController.java
+43
-16
linkwe-common/src/main/java/com/linkwechat/common/constant/WeConstans.java
.../main/java/com/linkwechat/common/constant/WeConstans.java
+20
-0
linkwe-wecom/src/main/java/com/linkwechat/wecom/domain/WeEmpleCode.java
...rc/main/java/com/linkwechat/wecom/domain/WeEmpleCode.java
+4
-0
linkwe-wecom/src/main/java/com/linkwechat/wecom/domain/dto/WeEmpleCodeDto.java
.../java/com/linkwechat/wecom/domain/dto/WeEmpleCodeDto.java
+0
-4
linkwe-wecom/src/main/java/com/linkwechat/wecom/factory/impl/WeEventChangeExternalContactImpl.java
.../wecom/factory/impl/WeEventChangeExternalContactImpl.java
+1
-1
linkwe-wecom/src/main/java/com/linkwechat/wecom/mapper/WeEmpleCodeMapper.java
...n/java/com/linkwechat/wecom/mapper/WeEmpleCodeMapper.java
+1
-1
linkwe-wecom/src/main/java/com/linkwechat/wecom/service/IWeEmpleCodeService.java
...ava/com/linkwechat/wecom/service/IWeEmpleCodeService.java
+11
-1
linkwe-wecom/src/main/java/com/linkwechat/wecom/service/impl/WeEmpleCodeServiceImpl.java
...linkwechat/wecom/service/impl/WeEmpleCodeServiceImpl.java
+94
-34
linkwe-wecom/src/main/resources/mapper/wecom/WeEmpleCodeMapper.xml
...com/src/main/resources/mapper/wecom/WeEmpleCodeMapper.xml
+15
-7
未找到文件。
linkwe-admin/src/main/java/com/linkwechat/web/controller/wecom/WeEmpleCodeController.java
浏览文件 @
1eca46e2
...
...
@@ -5,8 +5,10 @@ import com.linkwechat.common.core.controller.BaseController;
import
com.linkwechat.common.core.domain.AjaxResult
;
import
com.linkwechat.common.core.page.TableDataInfo
;
import
com.linkwechat.common.enums.BusinessType
;
import
com.linkwechat.common.exception.wecom.WeComException
;
import
com.linkwechat.common.utils.StringUtils
;
import
com.linkwechat.wecom.domain.WeEmpleCode
;
import
com.linkwechat.wecom.domain.WeEmpleCodeUseScop
;
import
com.linkwechat.wecom.service.IWeEmpleCodeService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.security.access.prepost.PreAuthorize
;
...
...
@@ -14,18 +16,18 @@ import org.springframework.web.bind.annotation.*;
import
java.util.Arrays
;
import
java.util.List
;
import
java.util.Optional
;
import
java.util.stream.Collectors
;
/**
* 员工活码Controller
*
*
* @author ruoyi
* @date 2020-10-04
*/
@RestController
@RequestMapping
(
"/wecom/code"
)
public
class
WeEmpleCodeController
extends
BaseController
{
public
class
WeEmpleCodeController
extends
BaseController
{
@Autowired
private
IWeEmpleCodeService
weEmpleCodeService
;
...
...
@@ -34,8 +36,7 @@ public class WeEmpleCodeController extends BaseController
*/
@PreAuthorize
(
"@ss.hasPermi('wecom:code:list')"
)
@GetMapping
(
"/list"
)
public
TableDataInfo
list
(
WeEmpleCode
weEmpleCode
)
{
public
TableDataInfo
list
(
WeEmpleCode
weEmpleCode
)
{
startPage
();
List
<
WeEmpleCode
>
list
=
weEmpleCodeService
.
selectWeEmpleCodeList
(
weEmpleCode
);
return
getDataTable
(
list
);
...
...
@@ -47,8 +48,7 @@ public class WeEmpleCodeController extends BaseController
*/
@PreAuthorize
(
"@ss.hasPermi('wecom:code:query')"
)
@GetMapping
(
value
=
"/{id}"
)
public
AjaxResult
getInfo
(
@PathVariable
(
"id"
)
Long
id
)
{
public
AjaxResult
getInfo
(
@PathVariable
(
"id"
)
Long
id
)
{
return
AjaxResult
.
success
(
weEmpleCodeService
.
selectWeEmpleCodeById
(
id
));
}
...
...
@@ -58,10 +58,39 @@ public class WeEmpleCodeController extends BaseController
@PreAuthorize
(
"@ss.hasPermi('wecom:code:add')"
)
@Log
(
title
=
"员工活码"
,
businessType
=
BusinessType
.
INSERT
)
@PostMapping
(
"/add"
)
public
AjaxResult
add
(
@RequestBody
WeEmpleCode
weEmpleCode
)
{
weEmpleCodeService
.
insertWeEmpleCode
(
weEmpleCode
);
return
AjaxResult
.
success
();
public
AjaxResult
add
(
@RequestBody
WeEmpleCode
weEmpleCode
)
{
try
{
weEmpleCodeService
.
insertWeEmpleCode
(
weEmpleCode
);
return
AjaxResult
.
success
();
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
if
(
e
instanceof
WeComException
){
return
AjaxResult
.
error
(
e
.
getMessage
());
}
else
{
return
AjaxResult
.
error
(
"请求接口异常!"
);
}
}
}
/**
* 批量新增员工活码
*/
@PreAuthorize
(
"@ss.hasPermi('wecom:code:add')"
)
@Log
(
title
=
"批量新增员工活码"
,
businessType
=
BusinessType
.
INSERT
)
@PostMapping
(
"/batchAdd"
)
public
AjaxResult
batchAdd
(
@RequestBody
List
<
WeEmpleCodeUseScop
>
weEmpleCodeUseScops
)
{
try
{
weEmpleCodeService
.
insertWeEmpleCodeBatch
(
weEmpleCodeUseScops
);
return
AjaxResult
.
success
();
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
if
(
e
instanceof
WeComException
){
return
AjaxResult
.
error
(
e
.
getMessage
());
}
else
{
return
AjaxResult
.
error
(
"请求接口异常!"
);
}
}
}
/**
...
...
@@ -70,8 +99,7 @@ public class WeEmpleCodeController extends BaseController
@PreAuthorize
(
"@ss.hasPermi('wecom:code:edit')"
)
@Log
(
title
=
"员工活码"
,
businessType
=
BusinessType
.
UPDATE
)
@PutMapping
(
"/update"
)
public
AjaxResult
edit
(
@RequestBody
WeEmpleCode
weEmpleCode
)
{
public
AjaxResult
edit
(
@RequestBody
WeEmpleCode
weEmpleCode
)
{
weEmpleCodeService
.
updateWeEmpleCode
(
weEmpleCode
);
return
AjaxResult
.
success
();
...
...
@@ -82,9 +110,8 @@ public class WeEmpleCodeController extends BaseController
*/
@PreAuthorize
(
"@ss.hasPermi('wecom:code:remove')"
)
@Log
(
title
=
"员工活码"
,
businessType
=
BusinessType
.
DELETE
)
@DeleteMapping
(
"/delete/{ids}"
)
public
AjaxResult
remove
(
@PathVariable
String
ids
)
{
@DeleteMapping
(
"/delete/{ids}"
)
public
AjaxResult
remove
(
@PathVariable
String
ids
)
{
List
<
String
>
idList
=
Arrays
.
stream
(
StringUtils
.
split
(
ids
,
","
)).
collect
(
Collectors
.
toList
());
return
toAjax
(
weEmpleCodeService
.
batchRemoveWeEmpleCodeIds
(
idList
));
}
...
...
linkwe-common/src/main/java/com/linkwechat/common/constant/WeConstans.java
浏览文件 @
1eca46e2
...
...
@@ -129,6 +129,20 @@ public class WeConstans {
*/
public
static
final
Integer
QR_CODE_EMPLE_CODE_SCENE
=
2
;
/**
* 客户添加时无需经过确认自动成为好友,是
*/
public
static
final
Boolean
IS_JOIN_CONFIR_MFRIENDS
=
true
;
/**
* 客户添加时无需经过确认自动成为好友,否
*/
public
static
final
Boolean
NOT_IS_JOIN_CONFIR_MFRIENDS
=
false
;
/**
* 批量生成的单人码 活动场景
*/
public
static
final
String
ONE_PERSON_CODE_GENERATED_BATCH
=
"批量生成的单人码"
;
/**
* 微信接口相应端错误字段
...
...
@@ -179,6 +193,12 @@ public class WeConstans {
public
static
final
String
CORPID
=
"CORP_ID"
;
/**
* 业务id类型1:组织机构id,2:成员id
*/
public
static
final
Integer
USE_SCOP_BUSINESSID_TYPE_USER
=
2
;
public
static
final
Integer
USE_SCOP_BUSINESSID_TYPE_ORG
=
1
;
/**
* 企微回调事件类型路由
*/
...
...
linkwe-wecom/src/main/java/com/linkwechat/wecom/domain/WeEmpleCode.java
浏览文件 @
1eca46e2
...
...
@@ -53,6 +53,10 @@ public class WeEmpleCode extends BaseEntity
@TableField
(
exist
=
false
)
private
List
<
WeEmpleCodeTag
>
weEmpleCodeTags
;
/** 扫码标签 */
@TableField
(
exist
=
false
)
private
WeMaterial
weMaterial
;
/** 新增联系方式的配置id */
private
String
configId
;
...
...
linkwe-wecom/src/main/java/com/linkwechat/wecom/domain/dto/WeEmpleCodeDto.java
浏览文件 @
1eca46e2
...
...
@@ -8,10 +8,6 @@ public class WeEmpleCodeDto {
* 欢迎语
*/
private
String
welcomeMsg
;
/**
* 欢迎语模板类型:1:员工欢迎语;2:部门员工欢迎语;3:客户群欢迎语
*/
private
Integer
welcomeMsgTplType
;
/**
* 分类id
*/
...
...
linkwe-wecom/src/main/java/com/linkwechat/wecom/factory/impl/WeEventChangeExternalContactImpl.java
浏览文件 @
1eca46e2
...
...
@@ -108,7 +108,7 @@ public class WeEventChangeExternalContactImpl implements WeCallBackEventFactory
if
(
message
.
getState
()
!=
null
&&
message
.
getWelcomeCode
()
!=
null
)
{
log
.
info
(
"执行发送欢迎语>>>>>>>>>>>>>>>"
);
WeWelcomeMsg
.
WeWelcomeMsgBuilder
weWelcomeMsgBuilder
=
WeWelcomeMsg
.
builder
().
welcome_code
(
message
.
getWelcomeCode
());
WeEmpleCodeDto
messageMap
=
weEmpleCodeService
.
selectWelcomeMsgByActivityScene
(
message
.
getState
());
WeEmpleCodeDto
messageMap
=
weEmpleCodeService
.
selectWelcomeMsgByActivityScene
(
message
.
getState
()
,
message
.
getUserId
()
);
if
(
messageMap
!=
null
)
{
if
(
StringUtils
.
isNotEmpty
(
messageMap
.
getWelcomeMsg
())){
Text
text
=
new
Text
();
...
...
linkwe-wecom/src/main/java/com/linkwechat/wecom/mapper/WeEmpleCodeMapper.java
浏览文件 @
1eca46e2
...
...
@@ -84,5 +84,5 @@ public interface WeEmpleCodeMapper extends BaseMapper<WeEmpleCode>
* @param activityScene 活动场景
* @return
*/
public
WeEmpleCodeDto
selectWelcomeMsgByActivityScene
(
@Param
(
"activityScene"
)
String
activityScene
);
public
WeEmpleCodeDto
selectWelcomeMsgByActivityScene
(
@Param
(
"activityScene"
)
String
activityScene
,
@Param
(
"userId"
)
String
userId
);
}
linkwe-wecom/src/main/java/com/linkwechat/wecom/service/IWeEmpleCodeService.java
浏览文件 @
1eca46e2
...
...
@@ -2,6 +2,7 @@ package com.linkwechat.wecom.service;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.linkwechat.wecom.domain.WeEmpleCode
;
import
com.linkwechat.wecom.domain.WeEmpleCodeUseScop
;
import
com.linkwechat.wecom.domain.dto.WeEmpleCodeDto
;
import
java.util.List
;
...
...
@@ -75,7 +76,16 @@ public interface IWeEmpleCodeService extends IService<WeEmpleCode>
/**
* 通过活动场景获取客户欢迎语
* @param activityScene 活动场景
* @param userId 成员id
* @return
*/
public
WeEmpleCodeDto
selectWelcomeMsgByActivityScene
(
String
activityScene
);
public
WeEmpleCodeDto
selectWelcomeMsgByActivityScene
(
String
activityScene
,
String
userId
);
/**
* 批量新增员工活码
*
* @param weEmpleCodeUseScops 员工信息
* @return 结果
*/
public
void
insertWeEmpleCodeBatch
(
List
<
WeEmpleCodeUseScop
>
weEmpleCodeUseScops
);
}
linkwe-wecom/src/main/java/com/linkwechat/wecom/service/impl/WeEmpleCodeServiceImpl.java
浏览文件 @
1eca46e2
...
...
@@ -2,24 +2,29 @@ package com.linkwechat.wecom.service.impl;
import
cn.hutool.core.collection.CollectionUtil
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.linkwechat.common.constant.WeConstans
;
import
com.linkwechat.common.exception.wecom.WeComException
;
import
com.linkwechat.common.utils.SecurityUtils
;
import
com.linkwechat.common.utils.StringUtils
;
import
com.linkwechat.wecom.client.WeExternalContactClient
;
import
com.linkwechat.wecom.domain.WeEmpleCode
;
import
com.linkwechat.wecom.domain.WeEmpleCodeUseScop
;
import
com.linkwechat.wecom.domain.WeMaterial
;
import
com.linkwechat.wecom.domain.dto.WeEmpleCodeDto
;
import
com.linkwechat.wecom.domain.dto.WeExternalContactDto
;
import
com.linkwechat.wecom.mapper.WeEmpleCodeMapper
;
import
com.linkwechat.wecom.service.IWeEmpleCodeService
;
import
com.linkwechat.wecom.service.IWeEmpleCodeTagService
;
import
com.linkwechat.wecom.service.IWeEmpleCodeUseScopService
;
import
com.linkwechat.wecom.service.IWeMaterialService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.
Map
;
import
java.util.
Optional
;
import
java.util.stream.Collectors
;
/**
...
...
@@ -42,6 +47,9 @@ public class WeEmpleCodeServiceImpl extends ServiceImpl<WeEmpleCodeMapper, WeEmp
@Autowired
private
WeExternalContactClient
weExternalContactClient
;
@Autowired
private
IWeMaterialService
materialService
;
/**
* 查询员工活码
*
...
...
@@ -50,7 +58,15 @@ public class WeEmpleCodeServiceImpl extends ServiceImpl<WeEmpleCodeMapper, WeEmp
*/
@Override
public
WeEmpleCode
selectWeEmpleCodeById
(
Long
id
)
{
return
this
.
baseMapper
.
selectWeEmpleCodeById
(
id
);
WeEmpleCode
weEmpleCode
=
this
.
baseMapper
.
selectWeEmpleCodeById
(
id
);
//查询活码详情中素材信息
Optional
.
ofNullable
(
weEmpleCode
).
map
(
WeEmpleCode:
:
getMediaId
).
ifPresent
(
mediaId
->
{
WeMaterial
weMaterialInfo
=
materialService
.
findWeMaterialById
(
mediaId
);
if
(
weMaterialInfo
!=
null
)
{
weEmpleCode
.
setWeMaterial
(
weMaterialInfo
);
}
});
return
weEmpleCode
;
}
/**
...
...
@@ -62,10 +78,10 @@ public class WeEmpleCodeServiceImpl extends ServiceImpl<WeEmpleCodeMapper, WeEmp
@Override
public
List
<
WeEmpleCode
>
selectWeEmpleCodeList
(
WeEmpleCode
weEmpleCode
)
{
List
<
WeEmpleCode
>
weEmpleCodeList
=
this
.
baseMapper
.
selectWeEmpleCodeList
(
weEmpleCode
);
if
(
weEmpleCodeList
!=
null
)
{
weEmpleCodeList
.
forEach
(
empleCode
->{
if
(
weEmpleCodeList
!=
null
)
{
weEmpleCodeList
.
forEach
(
empleCode
->
{
List
<
WeEmpleCodeUseScop
>
weEmpleCodeUseScopList
=
empleCode
.
getWeEmpleCodeUseScops
();
if
(
CollectionUtil
.
isNotEmpty
(
weEmpleCodeUseScopList
)){
if
(
CollectionUtil
.
isNotEmpty
(
weEmpleCodeUseScopList
))
{
String
useUserName
=
weEmpleCodeUseScopList
.
stream
().
map
(
WeEmpleCodeUseScop:
:
getBusinessName
)
.
filter
(
StringUtils:
:
isNotEmpty
).
collect
(
Collectors
.
joining
(
","
));
empleCode
.
setUseUserName
(
useUserName
);
...
...
@@ -86,31 +102,10 @@ public class WeEmpleCodeServiceImpl extends ServiceImpl<WeEmpleCodeMapper, WeEmp
*/
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
void
insertWeEmpleCode
(
WeEmpleCode
weEmpleCode
)
{
public
void
insertWeEmpleCode
(
WeEmpleCode
weEmpleCode
){
weEmpleCode
.
setCreateTime
(
new
Date
());
weEmpleCode
.
setCreateBy
(
SecurityUtils
.
getUsername
());
WeExternalContactDto
.
WeContactWay
weContactWay
=
getWeContactWay
(
weEmpleCode
);
try
{
WeExternalContactDto
weExternalContactDto
=
weExternalContactClient
.
addContactWay
(
weContactWay
);
//新增联系方式的配置id
String
configId
=
weExternalContactDto
.
getConfig_id
();
//联系我二维码链接
String
qrCode
=
weExternalContactDto
.
getQr_code
();
weEmpleCode
.
setConfigId
(
configId
);
weEmpleCode
.
setQrCode
(
qrCode
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
if
(
this
.
baseMapper
.
insertWeEmpleCode
(
weEmpleCode
)
==
1
)
{
if
(
CollectionUtil
.
isNotEmpty
(
weEmpleCode
.
getWeEmpleCodeUseScops
()))
{
weEmpleCode
.
getWeEmpleCodeUseScops
().
forEach
(
item
->
item
.
setEmpleCodeId
(
weEmpleCode
.
getId
()));
iWeEmpleCodeUseScopService
.
saveBatch
(
weEmpleCode
.
getWeEmpleCodeUseScops
());
}
if
(
CollectionUtil
.
isNotEmpty
(
weEmpleCode
.
getWeEmpleCodeTags
()))
{
weEmpleCode
.
getWeEmpleCodeTags
().
forEach
(
item
->
item
.
setEmpleCodeId
(
weEmpleCode
.
getId
()));
weEmpleCodeTagService
.
saveBatch
(
weEmpleCode
.
getWeEmpleCodeTags
());
}
}
addWeEmplCode
(
weEmpleCode
);
}
/**
...
...
@@ -120,6 +115,7 @@ public class WeEmpleCodeServiceImpl extends ServiceImpl<WeEmpleCodeMapper, WeEmp
* @return 结果
*/
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
void
updateWeEmpleCode
(
WeEmpleCode
weEmpleCode
)
{
WeExternalContactDto
.
WeContactWay
weContactWay
=
getWeContactWay
(
weEmpleCode
);
try
{
...
...
@@ -159,6 +155,7 @@ public class WeEmpleCodeServiceImpl extends ServiceImpl<WeEmpleCodeMapper, WeEmp
* @return 结果
*/
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
int
deleteWeEmpleCodeById
(
Long
id
)
{
WeEmpleCode
weEmpleCode
=
getById
(
id
);
if
(
weEmpleCode
!=
null
&&
weEmpleCode
.
getConfigId
()
!=
null
)
{
...
...
@@ -175,13 +172,73 @@ public class WeEmpleCodeServiceImpl extends ServiceImpl<WeEmpleCodeMapper, WeEmp
* @return 结果
*/
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
int
batchRemoveWeEmpleCodeIds
(
List
<
String
>
ids
)
{
return
this
.
baseMapper
.
batchRemoveWeEmpleCodeIds
(
ids
);
}
@Override
public
WeEmpleCodeDto
selectWelcomeMsgByActivityScene
(
String
activityScene
)
{
return
this
.
baseMapper
.
selectWelcomeMsgByActivityScene
(
activityScene
);
public
WeEmpleCodeDto
selectWelcomeMsgByActivityScene
(
String
activityScene
,
String
userId
)
{
return
this
.
baseMapper
.
selectWelcomeMsgByActivityScene
(
activityScene
,
userId
);
}
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
void
insertWeEmpleCodeBatch
(
List
<
WeEmpleCodeUseScop
>
weEmpleCodeUseScops
){
Optional
.
ofNullable
(
weEmpleCodeUseScops
).
orElseGet
(
ArrayList:
:
new
).
forEach
(
useScops
->
{
//机构类型数据返回不执行生成二维码业务
if
(
WeConstans
.
USE_SCOP_BUSINESSID_TYPE_ORG
.
equals
(
useScops
.
getBusinessIdType
()))
{
return
;
}
List
<
WeEmpleCodeUseScop
>
weEmpleCodeUseScopList
=
new
ArrayList
<>();
weEmpleCodeUseScopList
.
add
(
useScops
);
WeEmpleCode
weEmpleCode
=
new
WeEmpleCode
();
weEmpleCode
.
setCreateTime
(
new
Date
());
weEmpleCode
.
setCreateBy
(
SecurityUtils
.
getUsername
());
weEmpleCode
.
setCodeType
(
WeConstans
.
SINGLE_EMPLE_CODE_TYPE
);
weEmpleCode
.
setIsJoinConfirmFriends
(
WeConstans
.
IS_JOIN_CONFIR_MFRIENDS
);
weEmpleCode
.
setActivityScene
(
WeConstans
.
ONE_PERSON_CODE_GENERATED_BATCH
);
weEmpleCode
.
setWeEmpleCodeUseScops
(
weEmpleCodeUseScopList
);
addWeEmplCode
(
weEmpleCode
);
});
}
/**
* 新增员工活码
*
* @param weEmpleCode
*/
private
void
addWeEmplCode
(
WeEmpleCode
weEmpleCode
){
List
<
WeEmpleCodeUseScop
>
weEmpleCodeUseScops
=
weEmpleCode
.
getWeEmpleCodeUseScops
();
List
<
String
>
businessIdList
=
Optional
.
ofNullable
(
weEmpleCodeUseScops
).
orElseGet
(
ArrayList:
:
new
)
.
stream
().
map
(
WeEmpleCodeUseScop:
:
getBusinessId
)
.
collect
(
Collectors
.
toList
());
List
<
WeEmpleCodeUseScop
>
weEmpleCodeUseScopList
=
iWeEmpleCodeUseScopService
.
listByIds
(
businessIdList
);
if
(
weEmpleCodeUseScopList
!=
null
)
{
throw
new
WeComException
(
"该员工或部门已经创建,无法重复创建"
);
}
WeExternalContactDto
.
WeContactWay
weContactWay
=
getWeContactWay
(
weEmpleCode
);
try
{
WeExternalContactDto
weExternalContactDto
=
weExternalContactClient
.
addContactWay
(
weContactWay
);
//新增联系方式的配置id
String
configId
=
weExternalContactDto
.
getConfig_id
();
//联系我二维码链接
String
qrCode
=
weExternalContactDto
.
getQr_code
();
weEmpleCode
.
setConfigId
(
configId
);
weEmpleCode
.
setQrCode
(
qrCode
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
if
(
this
.
baseMapper
.
insertWeEmpleCode
(
weEmpleCode
)
==
1
)
{
if
(
CollectionUtil
.
isNotEmpty
(
weEmpleCode
.
getWeEmpleCodeUseScops
()))
{
weEmpleCode
.
getWeEmpleCodeUseScops
().
forEach
(
item
->
item
.
setEmpleCodeId
(
weEmpleCode
.
getId
()));
iWeEmpleCodeUseScopService
.
saveBatch
(
weEmpleCode
.
getWeEmpleCodeUseScops
());
}
if
(
CollectionUtil
.
isNotEmpty
(
weEmpleCode
.
getWeEmpleCodeTags
()))
{
weEmpleCode
.
getWeEmpleCodeTags
().
forEach
(
item
->
item
.
setEmpleCodeId
(
weEmpleCode
.
getId
()));
weEmpleCodeTagService
.
saveBatch
(
weEmpleCode
.
getWeEmpleCodeTags
());
}
}
}
private
WeExternalContactDto
.
WeContactWay
getWeContactWay
(
WeEmpleCode
weEmpleCode
)
{
...
...
@@ -194,12 +251,15 @@ public class WeEmpleCodeServiceImpl extends ServiceImpl<WeEmpleCodeMapper, WeEmp
weContactWay
.
setSkip_verify
(
weEmpleCode
.
getIsJoinConfirmFriends
());
weContactWay
.
setState
(
weEmpleCode
.
getActivityScene
());
if
(
CollectionUtil
.
isNotEmpty
(
weEmpleCodeUseScops
))
{
String
[]
userIdArr
=
weEmpleCodeUseScops
.
stream
().
filter
(
itme
->
2
==
itme
.
getBusinessIdType
())
String
[]
userIdArr
=
weEmpleCodeUseScops
.
stream
().
filter
(
itme
->
2
==
itme
.
getBusinessIdType
()
&&
itme
.
getBusinessId
()
!=
null
)
.
map
(
WeEmpleCodeUseScop:
:
getBusinessId
).
toArray
(
String
[]::
new
);
weContactWay
.
setUser
(
userIdArr
);
Long
[]
partyArr
=
weEmpleCodeUseScops
.
stream
().
filter
(
itme
->
1
==
itme
.
getBusinessIdType
())
.
map
(
WeEmpleCodeUseScop:
:
getBusinessId
).
toArray
(
Long
[]::
new
);
weContactWay
.
setParty
(
partyArr
);
if
(!
WeConstans
.
SINGLE_EMPLE_CODE_TYPE
.
equals
(
weEmpleCode
.
getCodeType
()))
{
Long
[]
partyArr
=
weEmpleCodeUseScops
.
stream
().
filter
(
itme
->
1
==
itme
.
getBusinessIdType
()
&&
itme
.
getBusinessId
()
!=
null
)
.
map
(
item
->
Long
.
valueOf
(
item
.
getBusinessId
())).
collect
(
Collectors
.
toList
()).
toArray
(
new
Long
[]{});
weContactWay
.
setParty
(
partyArr
);
}
}
return
weContactWay
;
}
...
...
linkwe-wecom/src/main/resources/mapper/wecom/WeEmpleCodeMapper.xml
浏览文件 @
1eca46e2
...
...
@@ -15,6 +15,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result
property=
"delFlag"
column=
"del_flag"
/>
<result
property=
"configId"
column=
"config_id"
/>
<result
property=
"qrCode"
column=
"qr_code"
/>
<result
property=
"mediaId"
column=
"media_id"
/>
<collection
property=
"weEmpleCodeUseScops"
ofType=
"com.linkwechat.wecom.domain.WeEmpleCodeUseScop"
>
<result
property=
"businessId"
column=
"business_id"
/>
<result
property=
"businessName"
column=
"business_name"
/>
...
...
@@ -34,6 +35,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
select
wecode.id,
wecode.code_type,
wecode.media_id,
wecode.is_join_confirm_friends,
wecode.activity_scene,
wecode.welcome_msg,
...
...
@@ -123,6 +125,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if
test=
"delFlag != null"
>
del_flag,
</if>
<if
test=
"configId != null"
>
config_id,
</if>
<if
test=
"qrCode != null"
>
qr_code,
</if>
<if
test=
"mediaId != null"
>
media_id,
</if>
</trim>
<trim
prefix=
"values ("
suffix=
")"
suffixOverrides=
","
>
<if
test=
"id != null"
>
#{id},
</if>
...
...
@@ -135,6 +138,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if
test=
"delFlag != null"
>
#{delFlag},
</if>
<if
test=
"configId != null"
>
#{configId},
</if>
<if
test=
"qrCode != null"
>
#{qrCode},
</if>
<if
test=
"mediaId != null"
>
#{mediaId},
</if>
</trim>
</insert>
...
...
@@ -150,6 +154,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if
test=
"delFlag != null"
>
del_flag = #{delFlag},
</if>
<if
test=
"configId != null"
>
config_id = #{configId},
</if>
<if
test=
"qrCode != null"
>
qr_code = #{qrCode},
</if>
<if
test=
"mediaId != null"
>
media_id = #{mediaId},
</if>
</trim>
where id = #{id}
</update>
...
...
@@ -179,8 +184,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<select
id=
"selectWelcomeMsgByActivityScene"
parameterType=
"String"
resultType=
"com.linkwechat.wecom.domain.dto.WeEmpleCodeDto"
>
select
wmt.welcome_msg ,
wmt.welcome_msg_tpl_type,
wecode.welcome_msg ,
wm.category_id,
wm.material_url,
wm.content,
...
...
@@ -189,14 +193,18 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
wm.cover_url
from
we_emple_code wecode
left join
we_msg_tlp_scope wmts on wecode.welcome_msg = wmts .msg_tlp_id
left join we_msg_tlp wmt on wmt.id = wmts .msg_tlp_id
left join we_material wm on wm .id = wmt.media_id
where wmt.del_flag =0
left join we_emple_code_use_scop wecus on
wecode.id = wecus.emple_code_id
left join we_material wm on
wm .id = wecode.media_id
where
wecode.del_flag = 0
<if
test=
"activityScene != null and activityScene != ''"
>
and wecode.activity_scene = #{activityScene}
</if>
<if
test=
"userId != null and userId != ''"
>
and wecus.business_id = #{userId}
</if>
</select>
</mapper>
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录