Commit a241e180 by 王祖波

Merge branch 'feature-analysis' into 'master'

Feature analysis

See merge request !1863
parents 4397c659 81acb355
...@@ -16,7 +16,8 @@ public enum TriggerCustomerChannelType { ...@@ -16,7 +16,8 @@ public enum TriggerCustomerChannelType {
CUSTOMER_GROUP(2, "客户群"), CUSTOMER_GROUP(2, "客户群"),
DIALOG_BOX(3, "对话框"), DIALOG_BOX(3, "对话框"),
CONTENT_COPY(4, "复制文案"), CONTENT_COPY(4, "复制文案"),
CONTENT_DOWNLOAD(5, "下载素材") CONTENT_DOWNLOAD(5, "下载素材"),
RECOMMEND(6, "潜客推荐")
; ;
/** /**
...@@ -24,7 +25,7 @@ public enum TriggerCustomerChannelType { ...@@ -24,7 +25,7 @@ public enum TriggerCustomerChannelType {
* @return * @return
*/ */
public static List<Integer> showDescChannel(){ public static List<Integer> showDescChannel(){
return Arrays.asList(PYQ.code, CUSTOMER_GROUP.code, DIALOG_BOX.code); return Arrays.asList(PYQ.code, CUSTOMER_GROUP.code, DIALOG_BOX.code,RECOMMEND.code);
} }
public static TriggerCustomerChannelType getInstance(Integer code) { public static TriggerCustomerChannelType getInstance(Integer code) {
......
...@@ -199,7 +199,9 @@ public interface ExternalClerkRelatedApiService { ...@@ -199,7 +199,9 @@ public interface ExternalClerkRelatedApiService {
List<String> listMemberAndStaff(List<String> memberIdList , String StaffId , String enterpriseId) ; List<String> listMemberAndStaff(List<String> memberIdList , String StaffId , String enterpriseId) ;
List<ExternalClerkRelatedDTO> listRelationMemberAndStaff(List<String> memberIdList , String StaffId , String enterpriseId) ;
/** /**
* *
......
...@@ -397,6 +397,8 @@ public interface TabHaobanExternalClerkRelatedMapper { ...@@ -397,6 +397,8 @@ public interface TabHaobanExternalClerkRelatedMapper {
List<String> listMemberAndStaff(@Param("memberIdList")List<String> memberIdList, @Param("staffId")String staffId, @Param("enterpriseId")String enterpriseId); List<String> listMemberAndStaff(@Param("memberIdList")List<String> memberIdList, @Param("staffId")String staffId, @Param("enterpriseId")String enterpriseId);
List<TabHaobanExternalClerkRelated> listRelationMemberAndStaff(@Param("memberIdList")List<String> memberIdList, @Param("staffId")String staffId, @Param("enterpriseId")String enterpriseId);
/** /**
* 查询成员的好友列表 * 查询成员的好友列表
*/ */
......
...@@ -46,7 +46,7 @@ public class TabHaobanInteractRecord implements Serializable { ...@@ -46,7 +46,7 @@ public class TabHaobanInteractRecord implements Serializable {
*/ */
private String storeId; private String storeId;
/** /**
* 线索来源 1朋友圈; 2客户群; 3 对话框; 4 复制文案; 5 下载素材 * 线索来源 1朋友圈; 2客户群; 3 对话框; 4 复制文案; 5 下载素材;6 潜客推荐
* @see TriggerCustomerChannelType * @see TriggerCustomerChannelType
*/ */
private Integer channelSource; private Integer channelSource;
......
...@@ -48,7 +48,7 @@ public class TabHaobanTriggerCustomerDetail implements Serializable { ...@@ -48,7 +48,7 @@ public class TabHaobanTriggerCustomerDetail implements Serializable {
private String storeId; private String storeId;
/** /**
* 渠道类型 1朋友圈; 2客户群; 3 对话框; 4 复制文案; 5 下载素材 * 渠道类型 1朋友圈; 2客户群; 3 对话框; 4 复制文案; 5 下载素材;6 潜客推荐
*/ */
private Integer channelType; private Integer channelType;
/** /**
......
...@@ -44,7 +44,7 @@ public class TriggerCustomerDetailBO implements Serializable { ...@@ -44,7 +44,7 @@ public class TriggerCustomerDetailBO implements Serializable {
*/ */
private String storeId; private String storeId;
/** /**
* 渠道类型 1朋友圈; 2客户群; 3 对话框; 4 复制文案; 5 下载素材 * 渠道类型 1朋友圈; 2客户群; 3 对话框; 4 复制文案; 5 下载素材;6 潜客推荐
*/ */
private Integer channelType; private Integer channelType;
/** /**
......
...@@ -41,7 +41,7 @@ public class InteractRecordMessageBO implements Serializable { ...@@ -41,7 +41,7 @@ public class InteractRecordMessageBO implements Serializable {
private String materialId; private String materialId;
/** /**
* 来源渠道 * 来源渠道
* 线索来源 1朋友圈; 2客户群; 3 对话框; 0其他 * 线索来源 1朋友圈; 2客户群; 3 对话框; 6 潜客推荐; 0其他
*/ */
private Integer channelSource; private Integer channelSource;
/** /**
...@@ -120,4 +120,9 @@ public class InteractRecordMessageBO implements Serializable { ...@@ -120,4 +120,9 @@ public class InteractRecordMessageBO implements Serializable {
* 3 基础线下单 * 3 基础线下单
*/ */
private Integer orderType; private Integer orderType;
/**
* 商品类型 微盟、达摩
*/
private String goodsChannel;
} }
...@@ -9,6 +9,8 @@ import org.apache.commons.collections.MapUtils; ...@@ -9,6 +9,8 @@ import org.apache.commons.collections.MapUtils;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import java.util.Objects;
/** /**
* @Author MUSI * @Author MUSI
* @Date 2023/9/4 3:14 PM * @Date 2023/9/4 3:14 PM
...@@ -71,6 +73,8 @@ public class MessageConvertHelper { ...@@ -71,6 +73,8 @@ public class MessageConvertHelper {
String weimoFlag = cuspJson.getString("is_weiMob"); String weimoFlag = cuspJson.getString("is_weiMob");
interactRecordMessageBO.setWeimoGoodsFlag(this.convertWeimoFlag(weimoFlag)); interactRecordMessageBO.setWeimoGoodsFlag(this.convertWeimoFlag(weimoFlag));
String goodsChannel = cuspJson.getString("goods_channel");
interactRecordMessageBO.setGoodsChannel(goodsChannel);
String goodsId = cuspJson.getString("goods_id"); String goodsId = cuspJson.getString("goods_id");
interactRecordMessageBO.setGoodsId(goodsId); interactRecordMessageBO.setGoodsId(goodsId);
String goodsCode = cuspJson.getString("goods_code"); String goodsCode = cuspJson.getString("goods_code");
...@@ -93,6 +97,7 @@ public class MessageConvertHelper { ...@@ -93,6 +97,7 @@ public class MessageConvertHelper {
String refUrl = syspJson.getString("ref_url"); String refUrl = syspJson.getString("ref_url");
interactRecordMessageBO.setRefUrl(refUrl); interactRecordMessageBO.setRefUrl(refUrl);
dealRecordFilter(eventCode, interactRecordMessageBO);
return interactRecordMessageBO; return interactRecordMessageBO;
} }
...@@ -110,11 +115,24 @@ public class MessageConvertHelper { ...@@ -110,11 +115,24 @@ public class MessageConvertHelper {
return 2; return 2;
case "对话框": case "对话框":
return 3; return 3;
case "潜客推荐":
return 6;
default: default:
return 0; return 0;
} }
} }
private void dealRecordFilter(String eventCode,InteractRecordMessageBO interactRecordMessageBO) {
if (StringUtils.isBlank(eventCode) || interactRecordMessageBO == null) {
return;
}
// 商品详情页埋点如果是微盟类型商品不计算页面停留时长
if (Objects.equals("store_goods_detail", eventCode)
&& Objects.equals("微盟", interactRecordMessageBO.getGoodsChannel())) {
interactRecordMessageBO.setDurationTime(0);
}
}
private Integer convertEventType(String eventCode) { private Integer convertEventType(String eventCode) {
if (StringUtils.isBlank(eventCode)) { if (StringUtils.isBlank(eventCode)) {
return null; return null;
......
...@@ -524,6 +524,12 @@ public class ExternalClerkRelatedApiServiceImpl implements ExternalClerkRelatedA ...@@ -524,6 +524,12 @@ public class ExternalClerkRelatedApiServiceImpl implements ExternalClerkRelatedA
} }
@Override @Override
public List<ExternalClerkRelatedDTO> listRelationMemberAndStaff(List<String> memberIdList, String staffId, String enterpriseId) {
List<TabHaobanExternalClerkRelated> list = tabHaobanExternalClerkRelatedMapper.listRelationMemberAndStaff(memberIdList, staffId, enterpriseId);
return EntityUtil.changeEntityListNew(ExternalClerkRelatedDTO.class, list);
}
@Override
public Map<String, List<ClerkStaffWxUserDTO>> listMemberStaffRel(List<String> memberIdList, List<String> clerkIdList, String enterpriseId, String wxEnterpriseId) { public Map<String, List<ClerkStaffWxUserDTO>> listMemberStaffRel(List<String> memberIdList, List<String> clerkIdList, String enterpriseId, String wxEnterpriseId) {
if (CollectionUtils.isEmpty(memberIdList) || CollectionUtils.isEmpty(clerkIdList)) { if (CollectionUtils.isEmpty(memberIdList) || CollectionUtils.isEmpty(clerkIdList)) {
// 2个列表都为空查不了关系 // 2个列表都为空查不了关系
......
...@@ -848,6 +848,18 @@ ...@@ -848,6 +848,18 @@
AND status_flag = 1 AND status_flag = 1
</select> </select>
<select id="listRelationMemberAndStaff" resultMap="BaseResultMap">
select <include refid="Base_Column_List"/>
from tab_haoban_external_clerk_related
where member_id in
<foreach collection="memberIdList" item="item" separator="," open="(" close=")">
#{item}
</foreach>
and staff_id = #{staffId}
and enterprise_id = #{enterpriseId}
AND status_flag = 1
</select>
<select id="listByWxEnterpriseId" resultType="java.lang.String"> <select id="listByWxEnterpriseId" resultType="java.lang.String">
select staff_id select staff_id
from tab_haoban_external_clerk_related from tab_haoban_external_clerk_related
......
...@@ -43,10 +43,15 @@ public class ContentMaterialShareQO implements Serializable { ...@@ -43,10 +43,15 @@ public class ContentMaterialShareQO implements Serializable {
private String storeCode; private String storeCode;
/** /**
* 1朋友圈; 2客户群; 3 对话框; 4 复制文案; 5 下载素材 * 1朋友圈; 2客户群; 3 对话框; 4 复制文案; 5 下载素材;6 潜客推荐
*/ */
private Integer channelSource; private Integer channelSource;
/**
* 喜好推荐、商品中心、商品素材、其他
*/
private String goodsDetailSource;
public String getEnterpriseId() { public String getEnterpriseId() {
return enterpriseId; return enterpriseId;
} }
...@@ -102,4 +107,12 @@ public class ContentMaterialShareQO implements Serializable { ...@@ -102,4 +107,12 @@ public class ContentMaterialShareQO implements Serializable {
public void setChannelSource(Integer channelSource) { public void setChannelSource(Integer channelSource) {
this.channelSource = channelSource; this.channelSource = channelSource;
} }
public String getGoodsDetailSource() {
return goodsDetailSource;
}
public void setGoodsDetailSource(String goodsDetailSource) {
this.goodsDetailSource = goodsDetailSource;
}
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment