Commit 01e75bb4 by yaosai

Merge branch 'developer' into 'bugfix-0215'

# Conflicts:
#   haoban-manage3-api/src/main/java/com/gic/haoban/manage/api/service/MessageApiService.java
parents 03761022 ee19851f
package com.gic.haoban.manage.api.dto;
import java.io.Serializable;
/**
* @author mozhu
* @date 2022/1/22 17:05
*/
public class MemberUnionidWechatAccountQDTO implements Serializable {
private static final long serialVersionUID = -3157724333718434496L;
/**
* 企业id
*/
private String enterpriseId;
/**
* unionid
*/
private String unionid;
/**
* openId
*/
private String openId;
/**
* 会员id
*/
private String memberId;
/**
* 参数(带参数的公众号二维码必填)
*/
private String sceneStr;
public String getEnterpriseId() {
return enterpriseId;
}
public void setEnterpriseId(String enterpriseId) {
this.enterpriseId = enterpriseId;
}
public String getUnionid() {
return unionid;
}
public void setUnionid(String unionid) {
this.unionid = unionid;
}
public String getOpenId() {
return openId;
}
public void setOpenId(String openId) {
this.openId = openId;
}
public String getSceneStr() {
return sceneStr;
}
public void setSceneStr(String sceneStr) {
this.sceneStr = sceneStr;
}
public String getMemberId() {
return memberId;
}
public void setMemberId(String memberId) {
this.memberId = memberId;
}
}
......@@ -17,8 +17,14 @@ public class QywxCallBackDTO implements Serializable{
/**1男 2女***/
private Integer gender;
private String alias;
private String mainDepartment;
/**
* 是否是所在部门负责人 1 是 0 否 例 1,0,0
*/
private Integer[] isLeaderInDept;
private String[] department;
private String newUserid;
private String telephone;
private String mobile;
private String position;
private Integer status; //激活状态:1=激活或关注, 2=禁用, 4=未激活
......@@ -200,6 +206,27 @@ public class QywxCallBackDTO implements Serializable{
this.status = status;
}
public String getMainDepartment() {
return mainDepartment;
}
public void setMainDepartment(String mainDepartment) {
this.mainDepartment = mainDepartment;
}
public Integer[] getIsLeaderInDept() {
return isLeaderInDept;
}
public void setIsLeaderInDept(Integer[] isLeaderInDept) {
this.isLeaderInDept = isLeaderInDept;
}
public String getTelephone() {
return telephone;
}
public void setTelephone(String telephone) {
this.telephone = telephone;
}
}
......@@ -36,6 +36,10 @@ public class YwWxEnterpriseDTO implements Serializable {
* 转换状态:0:未转换;1:转换成功;2:转换中
*/
private Integer externalFlag;
/**
* 是否开启群发 true 开启 false 关闭
*/
private Boolean openMassFlag;
public static long getSerialversionuid() {
......@@ -156,4 +160,12 @@ public class YwWxEnterpriseDTO implements Serializable {
public void setExternalFlag(Integer externalFlag) {
this.externalFlag = externalFlag;
}
public Boolean getOpenMassFlag() {
return openMassFlag;
}
public void setOpenMassFlag(Boolean openMassFlag) {
this.openMassFlag = openMassFlag;
}
}
package com.gic.haoban.manage.api.dto.welcome.dto;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import java.io.Serializable;
/**
* desc:加好友配置dto
*
* @author: YongEn
* @date: 2022/2/9
**/
public class FriendSettingDetailDTO implements Serializable {
private static final long serialVersionUID = -8947246337650792859L;
/**
* 加好友配置id
*/
@JsonSerialize(using= ToStringSerializer.class)
private Long friendSettingId;
/**
* 微信企业id
*/
private String wxEnterpriseId;
/**
* 欢迎语配置类型 :
* 1 发送好办欢迎语文案+小程序卡片(附带导购参数)
* 2 发送好办欢迎语文案+公众号二维码(附带导购参数)
* 3 发送好办欢迎语文案
* 4 不发送好办欢迎语,用企微欢迎语
*/
private Integer friendSettingType;
public Long getFriendSettingId() {
return friendSettingId;
}
public void setFriendSettingId(Long friendSettingId) {
this.friendSettingId = friendSettingId;
}
public String getWxEnterpriseId() {
return wxEnterpriseId;
}
public void setWxEnterpriseId(String wxEnterpriseId) {
this.wxEnterpriseId = wxEnterpriseId;
}
public Integer getFriendSettingType() {
return friendSettingType;
}
public void setFriendSettingType(Integer friendSettingType) {
this.friendSettingType = friendSettingType;
}
@Override
public String toString() {
return "FriendSettingDTO{" +
"friendSettingId=" + friendSettingId +
", wxEnterpriseId='" + wxEnterpriseId + '\'' +
", friendSettingType=" + friendSettingType +
'}';
}
}
package com.gic.haoban.manage.api.dto.welcome.dto;
import java.io.Serializable;
import java.util.List;
/**
* desc:欢迎语详情dto
*
* @author: YongEn
* @date: 2022/2/9
**/
public class WelcomeDetailDTO implements Serializable {
private static final long serialVersionUID = 3769230492381481354L;
/**
* 欢迎语id
*/
private String welcomeId;
/**
* 微信企业id
*/
private String wxEnterpriseId;
/**
* 标题
*/
private String title;
/**
* 内容
*/
private String welcomeContent;
/**
* 0关闭 1开启
*/
private Integer openFlag;
/**
* 适用部门列表
*/
private List<WelcomeSuitDepartmentDTO> suitDepartmentList;
/**
* 适用员工列表
*/
private List<WelcomeSuitStaffDTO> suitStaffList;
/**
* 欢迎语媒体列表
*/
private List<WelcomeMediaDTO> welcomeMediaList;
public String getWelcomeId() {
return welcomeId;
}
public void setWelcomeId(String welcomeId) {
this.welcomeId = welcomeId;
}
public String getWxEnterpriseId() {
return wxEnterpriseId;
}
public void setWxEnterpriseId(String wxEnterpriseId) {
this.wxEnterpriseId = wxEnterpriseId;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getWelcomeContent() {
return welcomeContent;
}
public void setWelcomeContent(String welcomeContent) {
this.welcomeContent = welcomeContent;
}
public Integer getOpenFlag() {
return openFlag;
}
public void setOpenFlag(Integer openFlag) {
this.openFlag = openFlag;
}
public List<WelcomeSuitDepartmentDTO> getSuitDepartmentList() {
return suitDepartmentList;
}
public void setSuitDepartmentList(List<WelcomeSuitDepartmentDTO> suitDepartmentList) {
this.suitDepartmentList = suitDepartmentList;
}
public List<WelcomeSuitStaffDTO> getSuitStaffList() {
return suitStaffList;
}
public void setSuitStaffList(List<WelcomeSuitStaffDTO> suitStaffList) {
this.suitStaffList = suitStaffList;
}
public List<WelcomeMediaDTO> getWelcomeMediaList() {
return welcomeMediaList;
}
public void setWelcomeMediaList(List<WelcomeMediaDTO> welcomeMediaList) {
this.welcomeMediaList = welcomeMediaList;
}
@Override
public String toString() {
return "WelcomeDetailDTO{" +
"welcomeId='" + welcomeId + '\'' +
", wxEnterpriseId='" + wxEnterpriseId + '\'' +
", title='" + title + '\'' +
", welcomeContent='" + welcomeContent + '\'' +
", openFlag=" + openFlag +
", welcomeMediaList=" + welcomeMediaList +
'}';
}
}
package com.gic.haoban.manage.api.dto.welcome.dto;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
* desc:欢迎语列表dto
*
* @author: YongEn
* @date: 2022/2/9
**/
public class WelcomeListDTO implements Serializable {
private static final long serialVersionUID = -2794283506358759903L;
/**
* 欢迎语id
*/
private String welcomeId;
/**
* 微信企业id
*/
private String wxEnterpriseId;
/**
* 标题
*/
private String title;
/**
* 内容
*/
private String welcomeContent;
/**
* 0关闭 1开启
*/
private Integer openFlag;
/**
* 更新时间
*/
private Date updateTime;
/**
* 操作人id
*/
private String operatorId;
/**
* 操作人名称
*/
private String operatorName;
/**
* 适用部门列表
*/
private List<WelcomeSuitDepartmentDTO> suitDepartmentList;
/**
* 适用员工列表
*/
private List<WelcomeSuitStaffDTO> suitStaffList;
/**
* 欢迎语媒体列表
*/
private List<WelcomeMediaDTO> welcomeMediaList;
public String getWelcomeId() {
return welcomeId;
}
public void setWelcomeId(String welcomeId) {
this.welcomeId = welcomeId;
}
public String getWxEnterpriseId() {
return wxEnterpriseId;
}
public void setWxEnterpriseId(String wxEnterpriseId) {
this.wxEnterpriseId = wxEnterpriseId;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getWelcomeContent() {
return welcomeContent;
}
public void setWelcomeContent(String welcomeContent) {
this.welcomeContent = welcomeContent;
}
public Integer getOpenFlag() {
return openFlag;
}
public void setOpenFlag(Integer openFlag) {
this.openFlag = openFlag;
}
public String getOperatorId() {
return operatorId;
}
public void setOperatorId(String operatorId) {
this.operatorId = operatorId;
}
public String getOperatorName() {
return operatorName;
}
public void setOperatorName(String operatorName) {
this.operatorName = operatorName;
}
public List<WelcomeMediaDTO> getWelcomeMediaList() {
return welcomeMediaList;
}
public void setWelcomeMediaList(List<WelcomeMediaDTO> welcomeMediaList) {
this.welcomeMediaList = welcomeMediaList;
}
public Date getUpdateTime() {
return updateTime;
}
public void setUpdateTime(Date updateTime) {
this.updateTime = updateTime;
}
public List<WelcomeSuitDepartmentDTO> getSuitDepartmentList() {
return suitDepartmentList;
}
public void setSuitDepartmentList(List<WelcomeSuitDepartmentDTO> suitDepartmentList) {
this.suitDepartmentList = suitDepartmentList;
}
public List<WelcomeSuitStaffDTO> getSuitStaffList() {
return suitStaffList;
}
public void setSuitStaffList(List<WelcomeSuitStaffDTO> suitStaffList) {
this.suitStaffList = suitStaffList;
}
@Override
public String toString() {
return "WelcomeListDTO{" +
"welcomeId='" + welcomeId + '\'' +
", wxEnterpriseId='" + wxEnterpriseId + '\'' +
", title='" + title + '\'' +
", welcomeContent='" + welcomeContent + '\'' +
", openFlag=" + openFlag +
", updateTime=" + updateTime +
", operatorId='" + operatorId + '\'' +
", operatorName='" + operatorName + '\'' +
", welcomeMediaList=" + welcomeMediaList +
'}';
}
}
package com.gic.haoban.manage.api.dto.welcome.dto;
import java.io.Serializable;
/**
* desc:欢迎语媒体文件dto
*
* @author: YongEn
* @date: 2022/2/9
**/
public class WelcomeMediaDTO implements Serializable {
private static final long serialVersionUID = -7924288948457409336L;
/**
* 欢迎语媒体id
*/
private Long welcomeMediaId;
/**
* 微信企业id
*/
private String wxEnterpriseId;
/**
* 欢迎语id
*/
private String welcomeId;
/**
* 媒体标题
*/
private String mediaTitle;
/**
* 媒体类型 1图片 2视频 3文件 4链接
* @see com.gic.haoban.manage.api.enums.WelcomeMediaTypeEnum
*/
private Integer mediaType;
/**
* 媒体文件路径,保存上传路径
*/
private String mediaUrl;
public Long getWelcomeMediaId() {
return welcomeMediaId;
}
public void setWelcomeMediaId(Long welcomeMediaId) {
this.welcomeMediaId = welcomeMediaId;
}
public String getWxEnterpriseId() {
return wxEnterpriseId;
}
public void setWxEnterpriseId(String wxEnterpriseId) {
this.wxEnterpriseId = wxEnterpriseId;
}
public String getWelcomeId() {
return welcomeId;
}
public void setWelcomeId(String welcomeId) {
this.welcomeId = welcomeId;
}
public String getMediaTitle() {
return mediaTitle;
}
public void setMediaTitle(String mediaTitle) {
this.mediaTitle = mediaTitle;
}
public Integer getMediaType() {
return mediaType;
}
public void setMediaType(Integer mediaType) {
this.mediaType = mediaType;
}
public String getMediaUrl() {
return mediaUrl;
}
public void setMediaUrl(String mediaUrl) {
this.mediaUrl = mediaUrl;
}
@Override
public String toString() {
return "WelcomeMediaDTO{" +
"welcomeMediaId=" + welcomeMediaId +
", wxEnterpriseId='" + wxEnterpriseId + '\'' +
", welcomeId='" + welcomeId + '\'' +
", mediaType=" + mediaType +
", mediaUrl='" + mediaUrl + '\'' +
'}';
}
}
package com.gic.haoban.manage.api.dto.welcome.dto;
import java.io.Serializable;
/**
* desc:欢迎语适用部门dto
*
* @author: YongEn
* @date: 2022/2/11
**/
public class WelcomeSuitDepartmentDTO implements Serializable {
private static final long serialVersionUID = 272279336557372654L;
/**
* 部门id
*/
private String departmentId;
/**
* 部门名称
*/
private String departmentName;
/**
* 选中类型(部门)1被选中 2关联选中
*/
private Integer selectType;
public String getDepartmentId() {
return departmentId;
}
public void setDepartmentId(String departmentId) {
this.departmentId = departmentId;
}
public String getDepartmentName() {
return departmentName;
}
public void setDepartmentName(String departmentName) {
this.departmentName = departmentName;
}
public Integer getSelectType() {
return selectType;
}
public void setSelectType(Integer selectType) {
this.selectType = selectType;
}
@Override
public String toString() {
return "WelcomeSuitDepartmentDTO{" +
"departmentId='" + departmentId + '\'' +
", departmentName='" + departmentName + '\'' +
", selectType=" + selectType +
'}';
}
}
package com.gic.haoban.manage.api.dto.welcome.dto;
import java.io.Serializable;
/**
* desc:欢迎语适用员工dto
*
* @author: YongEn
* @date: 2022/2/11
**/
public class WelcomeSuitStaffDTO implements Serializable {
private static final long serialVersionUID = 2778978786281347228L;
/**
* 员工id
*/
private String staffId;
/**
* 员工名称
*/
private String staffName;
/**
* 员工所属部门id
*/
private String belongDepartmentId;
/**
* 员工所属部门名称
*/
private String belongDepartmentName;
public String getStaffId() {
return staffId;
}
public void setStaffId(String staffId) {
this.staffId = staffId;
}
public String getStaffName() {
return staffName;
}
public void setStaffName(String staffName) {
this.staffName = staffName;
}
public String getBelongDepartmentId() {
return belongDepartmentId;
}
public void setBelongDepartmentId(String belongDepartmentId) {
this.belongDepartmentId = belongDepartmentId;
}
public String getBelongDepartmentName() {
return belongDepartmentName;
}
public void setBelongDepartmentName(String belongDepartmentName) {
this.belongDepartmentName = belongDepartmentName;
}
@Override
public String toString() {
return "WelcomeSuitStaffDTO{" +
"staffId='" + staffId + '\'' +
", staffName='" + staffName + '\'' +
", belongDepartmentId='" + belongDepartmentId + '\'' +
", belongDepartmentName='" + belongDepartmentName + '\'' +
'}';
}
}
package com.gic.haoban.manage.api.dto.welcome.qdto;
import java.io.Serializable;
/**
* desc:保存加好友配置qdto
*
* @author: YongEn
* @date: 2022/2/11
**/
public class SaveFriendSettingQDTO implements Serializable {
private static final long serialVersionUID = 7952875026726340084L;
/**
* 加好友配置id
*/
private Long friendSettingId;
/**
* 微信企业id
*/
private String wxEnterpriseId;
/**
* 欢迎语配置类型 :
* 1 发送好办欢迎语文案+小程序卡片(附带导购参数)
* 2 发送好办欢迎语文案+公众号二维码(附带导购参数)
* 3 发送好办欢迎语文案
* 4 不发送好办欢迎语,用企微欢迎语
*/
private Integer friendSettingType;
/**
* 更新人id
*/
private String updateId;
/**
* 更新人名称
*/
private String updateName;
public Long getFriendSettingId() {
return friendSettingId;
}
public void setFriendSettingId(Long friendSettingId) {
this.friendSettingId = friendSettingId;
}
public String getWxEnterpriseId() {
return wxEnterpriseId;
}
public void setWxEnterpriseId(String wxEnterpriseId) {
this.wxEnterpriseId = wxEnterpriseId;
}
public Integer getFriendSettingType() {
return friendSettingType;
}
public void setFriendSettingType(Integer friendSettingType) {
this.friendSettingType = friendSettingType;
}
public String getUpdateId() {
return updateId;
}
public void setUpdateId(String updateId) {
this.updateId = updateId;
}
public String getUpdateName() {
return updateName;
}
public void setUpdateName(String updateName) {
this.updateName = updateName;
}
@Override
public String toString() {
return "SaveFriendSettingQDTO{" +
"friendSettingId=" + friendSettingId +
", wxEnterpriseId='" + wxEnterpriseId + '\'' +
", friendSettingType=" + friendSettingType +
", updateId='" + updateId + '\'' +
", updateName='" + updateName + '\'' +
'}';
}
}
package com.gic.haoban.manage.api.dto.welcome.qdto;
import java.io.Serializable;
/**
* desc:保存欢迎语媒体qdto
*
* @author: YongEn
* @date: 2022/2/11
**/
public class SaveWelcomeMediaQDTO implements Serializable {
private static final long serialVersionUID = 5292835528434173702L;
/**
* 媒体标题
*/
private String mediaTitle;
/**
* 媒体路径
*/
private String mediaUrl;
/**
* 媒体类型
* @see com.gic.haoban.manage.api.enums.WelcomeMediaTypeEnum
*/
private Integer mediaType;
public String getMediaTitle() {
return mediaTitle;
}
public void setMediaTitle(String mediaTitle) {
this.mediaTitle = mediaTitle;
}
public String getMediaUrl() {
return mediaUrl;
}
public void setMediaUrl(String mediaUrl) {
this.mediaUrl = mediaUrl;
}
public Integer getMediaType() {
return mediaType;
}
public void setMediaType(Integer mediaType) {
this.mediaType = mediaType;
}
@Override
public String toString() {
return "SaveWelcomeMediaQDTO{" +
"mediaTitle='" + mediaTitle + '\'' +
", mediaUrl='" + mediaUrl + '\'' +
", mediaType=" + mediaType +
'}';
}
}
package com.gic.haoban.manage.api.dto.welcome.qdto;
import com.gic.haoban.manage.api.dto.welcome.dto.WelcomeSuitDepartmentDTO;
import com.gic.haoban.manage.api.dto.welcome.dto.WelcomeSuitStaffDTO;
import java.io.Serializable;
import java.util.List;
/**
* desc:保存欢迎语qdto
*
* @author: YongEn
* @date: 2022/2/11
**/
public class SaveWelcomeQDTO implements Serializable {
private static final long serialVersionUID = 2585027808161889622L;
/**
* 欢迎语id
*/
private String welcomeId;
/**
* 微信企业id
*/
private String wxEnterpriseId;
/**
* 标题
*/
private String title;
/**
* 内容
*/
private String welcomeContent;
/**
* 操作人id
*/
private String operatorId;
/**
* 操作人名称
*/
private String operatorName;
/**
* 欢迎语媒体列表
*/
private List<SaveWelcomeMediaQDTO> mediaList;
/**
* 适用部门新增列表
*/
private List<WelcomeSuitDepartmentDTO> suitDepartmentAddList;
/**
* 适用部门删除列表
*/
private List<WelcomeSuitDepartmentDTO> suitDepartmentDeleteList;
/**
* 适用员工新增列表
*/
private List<WelcomeSuitStaffDTO> suitStaffAddList;
/**
* 适用员工删除列表
*/
private List<WelcomeSuitStaffDTO> suitStaffDeleteList;
public String getWelcomeId() {
return welcomeId;
}
public void setWelcomeId(String welcomeId) {
this.welcomeId = welcomeId;
}
public String getWxEnterpriseId() {
return wxEnterpriseId;
}
public void setWxEnterpriseId(String wxEnterpriseId) {
this.wxEnterpriseId = wxEnterpriseId;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getWelcomeContent() {
return welcomeContent;
}
public void setWelcomeContent(String welcomeContent) {
this.welcomeContent = welcomeContent;
}
public String getOperatorId() {
return operatorId;
}
public void setOperatorId(String operatorId) {
this.operatorId = operatorId;
}
public String getOperatorName() {
return operatorName;
}
public void setOperatorName(String operatorName) {
this.operatorName = operatorName;
}
public List<SaveWelcomeMediaQDTO> getMediaList() {
return mediaList;
}
public void setMediaList(List<SaveWelcomeMediaQDTO> mediaList) {
this.mediaList = mediaList;
}
public List<WelcomeSuitDepartmentDTO> getSuitDepartmentAddList() {
return suitDepartmentAddList;
}
public void setSuitDepartmentAddList(List<WelcomeSuitDepartmentDTO> suitDepartmentAddList) {
this.suitDepartmentAddList = suitDepartmentAddList;
}
public List<WelcomeSuitDepartmentDTO> getSuitDepartmentDeleteList() {
return suitDepartmentDeleteList;
}
public void setSuitDepartmentDeleteList(List<WelcomeSuitDepartmentDTO> suitDepartmentDeleteList) {
this.suitDepartmentDeleteList = suitDepartmentDeleteList;
}
public List<WelcomeSuitStaffDTO> getSuitStaffAddList() {
return suitStaffAddList;
}
public void setSuitStaffAddList(List<WelcomeSuitStaffDTO> suitStaffAddList) {
this.suitStaffAddList = suitStaffAddList;
}
public List<WelcomeSuitStaffDTO> getSuitStaffDeleteList() {
return suitStaffDeleteList;
}
public void setSuitStaffDeleteList(List<WelcomeSuitStaffDTO> suitStaffDeleteList) {
this.suitStaffDeleteList = suitStaffDeleteList;
}
@Override
public String toString() {
return "SaveWelcomeQDTO{" +
"welcomeId='" + welcomeId + '\'' +
", wxEnterpriseId='" + wxEnterpriseId + '\'' +
", title='" + title + '\'' +
", welcomeContent='" + welcomeContent + '\'' +
", operatorId='" + operatorId + '\'' +
", operatorName='" + operatorName + '\'' +
", mediaList=" + mediaList +
", suitDepartmentAddList=" + suitDepartmentAddList +
", suitDepartmentDeleteList=" + suitDepartmentDeleteList +
", suitStaffAddList=" + suitStaffAddList +
", suitStaffDeleteList=" + suitStaffDeleteList +
'}';
}
}
package com.gic.haoban.manage.api.enums;
import java.io.Serializable;
/**
* desc:加好友配置类型枚举类
*
* @author: YongEn
* @date: 2022/2/10
**/
public enum FriendSettingTypeEnum implements Serializable {
/**
*
*/
TEXT_AND_MINI_PROGRAM(1, "发送好办欢迎语文案+小程序卡片(附带导购参数)"),
TEXT_AND_QRCODE(2, "发送好办欢迎语文案+公众号二维码(附带导购参数)"),
TEXT(3, "发送好办欢迎语文案"),
NOT_TEXT(4, "不发送好办欢迎语,用企微欢迎语"),
;
private final Integer code;
private final String desc;
FriendSettingTypeEnum(Integer code, String desc) {
this.code = code;
this.desc = desc;
}
public Integer getCode() {
return code;
}
public String getDesc() {
return desc;
}
}
package com.gic.haoban.manage.api.enums;
import java.io.Serializable;
/**
* desc:欢迎语媒体文件类型枚举类
*
* @author: YongEn
* @date: 2022/2/9
**/
public enum WelcomeMediaTypeEnum implements Serializable {
/**
* 图片
*/
IMAGE(1, "图片"),
VIDEO(2, "视频"),
FILE(3, "文件"),
LINK(4, "链接"),
;
private final Integer code;
private final String desc;
WelcomeMediaTypeEnum(Integer code, String desc) {
this.code = code;
this.desc = desc;
}
public Integer getCode() {
return code;
}
public String getDesc() {
return desc;
}
}
package com.gic.haoban.manage.api.enums;
/**
* desc:欢迎语适用类型枚举类
*
* @author: YongEn
* @date: 2022/2/11
**/
public enum WelcomeSuitTypeEnum {
/**
* 部门
*/
DEPARTMENT(1, "部门"),
STAFF(2, "员工"),
;
private final Integer code;
private final String desc;
WelcomeSuitTypeEnum(Integer code, String desc) {
this.code = code;
this.desc = desc;
}
public Integer getCode() {
return code;
}
public String getDesc() {
return desc;
}
}
......@@ -79,6 +79,19 @@ public interface ExternalClerkRelatedApiService {
ServiceResponse<ExternalClerkRelatedDTO> bindMemberIdExternalByRelationKey(String relationKey, String enterpriseId, String memberId, String unionid);
/**
* 绑定好友-关注公共号
*
* @param externalClerkRelatedId
* @param enterpriseId
* @param memberId
* @param unionid
* @return {@link ExternalClerkRelatedDTO }
* @author mozhu
* @date 2022-02-09 16:57:19
*/
void bindMemberIdExternalById(String externalClerkRelatedId, String enterpriseId, String memberId, String unionid);
/**
* 查询clerk与union好友关系
*
* @param enterpriseId
......
......@@ -28,7 +28,6 @@ public interface MessageApiService {
*
* @param param
*/
@Deprecated
void dealWxMessage(String param);
/**
......
package com.gic.haoban.manage.api.service;
import com.gic.api.base.commons.ServiceResponse;
/**
* Created by tgs on 2020/2/9.
*/
......@@ -32,4 +34,11 @@ public interface TestApiService {
* @param cron
*/
public void quartzTaskConvert(String serviceName, String methodName, String cron, String params);
/**
* 拉取所有部门企业微信通讯录
* @return
*/
public ServiceResponse listAllQywxUser(String params);
}
package com.gic.haoban.manage.api.service;
import com.gic.api.base.commons.Page;
import com.gic.haoban.base.api.common.BasePageInfo;
import com.gic.haoban.manage.api.dto.*;
......@@ -8,180 +9,205 @@ import java.util.Set;
public interface WxEnterpriseApiService {
/**
* 好办接收企业微信回调信息
*
* @param dto
*/
void callbackReviceEnterprise(QywxCorpInfoSimpleDTO dto);
/**
* 运维后台获取微信企业id列表
* @return
*/
com.gic.api.base.commons.Page<YwWxEnterpriseDTO> list(BasePageInfo pageInfo,String keyword,List<String> enterpriseIds,Integer gicContactFlag,String version, List<String> enterpriseIdsNotIn);
/**
* 获取一个
* @param wxEnterpriseId
* @return
*/
WxEnterpriseDTO getOne(String wxEnterpriseId);
/**
* 根据corpId查询一条数据
* @param corpId
* @return
*/
WxEnterpriseDTO getEnterpriseBycorpId(String corpId);
/**
* 更新企业
* @param enterpriseDTO
*/
void update(WxEnterpriseDTO enterpriseDTO);
List<YwWxEnterpriseDTO> listAll();
List<YwWxEnterpriseDTO> listByIds(Set<String> enterpriseIds);
/**
* 企业是否过期 true是
* @param enterpriseId
* @return
*/
boolean enterpriseIsOver(String enterpriseId);
/**
* 获取配置
*
* @param wxEnterpriseId
* @param secretType
* @param enterpriseId
* @return
*/
SecretSettingDTO getSecretSetting(String wxEnterpriseId, int secretType, String enterpriseId);
/**
* 保存
*
* @param secretSettingDTO
* @return
*/
boolean saveSecretSetting(SecretSettingDTO secretSettingDTO);
/**
* secretList
* @param wxEnterpriseId
* @return
*/
List<SecretSettingDTO> listSecret(String wxEnterpriseId);
/**
* 删除
* @param secretId
* @return
*/
boolean delSecretSetting(String secretId);
/**
* 保存小程序配置
*
* @param miniprogramSettingDTO
* @return
*/
boolean saveMiniprogramSetting(MiniprogramSettingDTO miniprogramSettingDTO);
/**
* 查询小程序配置列表
*
* @param wxEnterpriseId
* @return
*/
List<MiniprogramSettingDTO> listMiniprogramSetting(String wxEnterpriseId);
/**
* 获取单个小程序配置
*
* @param wxEnterpriseId
* @param enterpriseId
* @return
*/
MiniprogramSettingDTO getMiniprogramSettingByEid(String wxEnterpriseId, String enterpriseId);
/**
* 获取单个小程序配置
*
* @param wxEnterpriseId
* @param appId
* @return
*/
MiniprogramSettingDTO getMiniprogramSettingByAppId(String wxEnterpriseId, String appId);
/**
* 删除 小程序配置
*
* @return
*/
boolean delMiniprogramSettingByEid(String id);
/**
* @param dto
* @return
*/
boolean saveWelcome(WelcomeDTO dto);
/**
* 获取欢迎语
*
* @param wxEnterpriseId
* @return
*/
WelcomeDTO getWelcome(String wxEnterpriseId);
/**
* 获取欢迎语
*
* @param wxEnterpriseId
* @return
*/
boolean setWelcome(String wxEnterpriseId, Integer openFlag);
/**
* 删除欢迎语
*
* @param wxEnterpriseId
* @return
*/
boolean delWelcome(String wxEnterpriseId);
/**
* 企微回调-同意授权转换external_userid
*
* @param corpId 公司标识(同意授权的企业ID)
* @param serviceCorpId 服务公司id(服务商企业ID)
* @author mozhu
* @date 2021-11-30 19:14:08
*/
void agreeExternalUseridCallBack(String corpId, String serviceCorpId);
/**
* 同意外部标识标志
*
* @param wxEnterpriseId 公司标识
* @param openFlag 开放的标志
* @author mozhu
* @date 2021-12-18 11:55:51
*/
void agreeExternalUseridFlag(String wxEnterpriseId, Integer openFlag);
/**
* 好办登录
*
* @param staffLoginDTO 员工登录dto
* @author mozhu
* @date 2021-12-15 11:02:52
*/
void wellDoneLogin(StaffLoginDTO staffLoginDTO);
/**
* 好办接收企业微信回调信息
*
* @param dto
*/
void callbackReviceEnterprise(QywxCorpInfoSimpleDTO dto);
/**
* desc: 运维后台获取微信企业id列表
*
* @param pageInfo 分页参数
* @param keyword 关键字
* @param enterpriseIds 企业id列表
* @param gicContactFlag 关联标记
* @param version 版本
* @param enterpriseIdsNotIn 企业不存在列表
* @param loginUserId 登录用户id
* @return : {@link Page< YwWxEnterpriseDTO>}
* @author : YongEn
* @date : 2022/2/15
*/
com.gic.api.base.commons.Page<YwWxEnterpriseDTO> list(BasePageInfo pageInfo,
String keyword,
List<String> enterpriseIds,
Integer gicContactFlag,
String version,
List<String> enterpriseIdsNotIn,
String loginUserId);
/**
* 获取一个
*
* @param wxEnterpriseId
* @return
*/
WxEnterpriseDTO getOne(String wxEnterpriseId);
/**
* 根据corpId查询一条数据
*
* @param corpId
* @return
*/
WxEnterpriseDTO getEnterpriseBycorpId(String corpId);
/**
* 更新企业
*
* @param enterpriseDTO
*/
void update(WxEnterpriseDTO enterpriseDTO);
List<YwWxEnterpriseDTO> listAll();
List<YwWxEnterpriseDTO> listByIds(Set<String> enterpriseIds);
/**
* 企业是否过期 true是
*
* @param enterpriseId
* @return
*/
boolean enterpriseIsOver(String enterpriseId);
/**
* 获取配置
*
* @param wxEnterpriseId
* @param secretType
* @param enterpriseId
* @return
*/
SecretSettingDTO getSecretSetting(String wxEnterpriseId, int secretType, String enterpriseId);
/**
* 保存
*
* @param secretSettingDTO
* @return
*/
boolean saveSecretSetting(SecretSettingDTO secretSettingDTO);
/**
* secretList
*
* @param wxEnterpriseId
* @return
*/
List<SecretSettingDTO> listSecret(String wxEnterpriseId);
/**
* 删除
*
* @param secretId
* @return
*/
boolean delSecretSetting(String secretId);
/**
* 保存小程序配置
*
* @param miniprogramSettingDTO
* @return
*/
boolean saveMiniprogramSetting(MiniprogramSettingDTO miniprogramSettingDTO);
/**
* 查询小程序配置列表
*
* @param wxEnterpriseId
* @return
*/
List<MiniprogramSettingDTO> listMiniprogramSetting(String wxEnterpriseId);
/**
* 获取单个小程序配置
*
* @param wxEnterpriseId
* @param enterpriseId
* @return
*/
MiniprogramSettingDTO getMiniprogramSettingByEid(String wxEnterpriseId, String enterpriseId);
/**
* 获取单个小程序配置
*
* @param wxEnterpriseId
* @param appId
* @return
*/
MiniprogramSettingDTO getMiniprogramSettingByAppId(String wxEnterpriseId, String appId);
/**
* 删除 小程序配置
*
* @return
*/
boolean delMiniprogramSettingByEid(String id);
/**
* @param dto
* @return
*/
boolean saveWelcome(WelcomeDTO dto);
/**
* 获取欢迎语
*
* @param wxEnterpriseId
* @return
*/
WelcomeDTO getWelcome(String wxEnterpriseId);
/**
* 获取欢迎语
*
* @param wxEnterpriseId
* @return
*/
boolean setWelcome(String wxEnterpriseId, Integer openFlag);
/**
* 删除欢迎语
*
* @param wxEnterpriseId
* @return
*/
boolean delWelcome(String wxEnterpriseId);
/**
* 企微回调-同意授权转换external_userid
*
* @param corpId 公司标识(同意授权的企业ID)
* @param serviceCorpId 服务公司id(服务商企业ID)
* @author mozhu
* @date 2021-11-30 19:14:08
*/
void agreeExternalUseridCallBack(String corpId, String serviceCorpId);
/**
* 同意外部标识标志
*
* @param wxEnterpriseId 公司标识
* @param openFlag 开放的标志
* @author mozhu
* @date 2021-12-18 11:55:51
*/
void agreeExternalUseridFlag(String wxEnterpriseId, Integer openFlag);
/**
* 好办登录
*
* @param staffLoginDTO 员工登录dto
* @author mozhu
* @date 2021-12-15 11:02:52
*/
void wellDoneLogin(StaffLoginDTO staffLoginDTO);
}
package com.gic.haoban.manage.api.service.out;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.haoban.manage.api.dto.welcome.dto.FriendSettingDetailDTO;
import com.gic.haoban.manage.api.dto.welcome.dto.WelcomeDetailDTO;
import com.gic.haoban.manage.api.dto.welcome.dto.WelcomeListDTO;
import com.gic.haoban.manage.api.dto.welcome.qdto.SaveFriendSettingQDTO;
import com.gic.haoban.manage.api.dto.welcome.qdto.SaveWelcomeQDTO;
import java.util.List;
/**
* desc:欢迎语对外服务接口
*
* @author: YongEn
* @date: 2022/2/11
**/
public interface WelcomeApiService {
/**
* desc: 保存欢迎语
*
* @param qdto qdto
* @return : {@link ServiceResponse < Boolean>}
* @author : YongEn
* @date : 2022/2/11
*/
ServiceResponse<Boolean> saveWelcome(SaveWelcomeQDTO qdto);
/**
* desc: 删除欢迎语
*
* @param welcomeId 欢迎语id
* @return : {@link ServiceResponse< Boolean>}
* @author : YongEn
* @date : 2022/2/11
*/
ServiceResponse<Boolean> removeWelcome(String welcomeId);
/**
* desc: 获取欢迎语列表
*
* @param wxEnterpriseId 微信企业id
* @param title 标题
* @return : {@link ServiceResponse< WelcomeListDTO>}
* @author : YongEn
* @date : 2022/2/11
*/
ServiceResponse<List<WelcomeListDTO>> listWelcome(String wxEnterpriseId, String title);
/**
* desc: 获取欢迎语详情
*
* @param welcomeId 欢迎语id
* @return : {@link ServiceResponse< WelcomeDetailDTO>}
* @author : YongEn
* @date : 2022/2/11
*/
ServiceResponse<WelcomeDetailDTO> getWelcome(String welcomeId);
/**
* desc: 保存加好友配置
*
* @param qdto qdto
* @return : {@link ServiceResponse< Boolean>}
* @author : YongEn
* @date : 2022/2/11
*/
ServiceResponse<Boolean> saveFriendSetting(SaveFriendSettingQDTO qdto);
/**
* desc: 获取加好友配置
*
* @param wxEnterpriseId 微信企业id
* @return : {@link ServiceResponse< FriendSettingDetailDTO>}
* @author : YongEn
* @date : 2022/2/11
*/
ServiceResponse<FriendSettingDetailDTO> getFriendSetting(String wxEnterpriseId);
}
......@@ -90,11 +90,18 @@ public class EnterpriseController extends WebBaseController {
* @param openTagFlag 标签开启状态:0 未开启 1 开启 2 所有
* @param gicEnterpriseName gic企业名称
* @param gicContactHelper 是否开启通讯录应用1是0否
* @param loginUserId 登录用户id
* @param version 版本
* @return res
*/
@RequestMapping("wx-enterprise-list")
public HaobanResponse wxEnterpriseListNew(BasePageInfo pageInfo, String keyword, Integer openTagFlag, String gicEnterpriseName, Integer gicContactHelper, String version) {
public HaobanResponse wxEnterpriseListNew(BasePageInfo pageInfo,
String keyword,
Integer openTagFlag,
String gicEnterpriseName,
Integer gicContactHelper,
String loginUserId,
String version) {
List<String> wxEnterpriseIdInList = Lists.newArrayList();
......@@ -112,15 +119,15 @@ public class EnterpriseController extends WebBaseController {
Page<YwWxEnterpriseDTO> page = new Page<>();
if (Objects.nonNull(openTagFlag) && ALL == openTagFlag) {
page = queryAll(pageInfo, keyword, gicContactHelper, version, wxEnterpriseIdInList, wxEnterpriseIdSetInCache);
page = queryAll(pageInfo, keyword, gicContactHelper, version, wxEnterpriseIdInList, wxEnterpriseIdSetInCache, loginUserId);
}
if (Objects.nonNull(openTagFlag) && OPEN == openTagFlag) {
page = queryOpen(pageInfo, keyword, gicEnterpriseName, gicContactHelper, version, wxEnterpriseIdInList, wxEnterpriseIdSetInCache);
page = queryOpen(pageInfo, keyword, gicEnterpriseName, gicContactHelper, version, wxEnterpriseIdInList, wxEnterpriseIdSetInCache, loginUserId);
}
if (Objects.nonNull(openTagFlag) && CLOSE == openTagFlag) {
page = queryClose(pageInfo, keyword, gicContactHelper, version, wxEnterpriseIdInList, wxEnterpriseIdSetInCache);
page = queryClose(pageInfo, keyword, gicContactHelper, version, wxEnterpriseIdInList, wxEnterpriseIdSetInCache, loginUserId);
}
pageResult.setList(page.getResult());
......@@ -160,9 +167,15 @@ public class EnterpriseController extends WebBaseController {
return wxEntIdSet;
}
private Page<YwWxEnterpriseDTO> queryAll(BasePageInfo pageInfo, String keyword, Integer gicContactHelper, String version, List<String> wxEnterpriseIdInList, Set<String> wxEnterpriseIdSetInCache) {
private Page<YwWxEnterpriseDTO> queryAll(BasePageInfo pageInfo,
String keyword,
Integer gicContactHelper,
String version,
List<String> wxEnterpriseIdInList,
Set<String> wxEnterpriseIdSetInCache,
String loginUserId) {
// 查询所有状态
Page<YwWxEnterpriseDTO> page = wxEnterpriseApiService.list(pageInfo, keyword, wxEnterpriseIdInList, gicContactHelper, version, null);
Page<YwWxEnterpriseDTO> page = wxEnterpriseApiService.list(pageInfo, keyword, wxEnterpriseIdInList, gicContactHelper, version, null, loginUserId);
page.getResult().forEach(one -> {
one.setVersion("3.0");
one.setBuyDate(new Date());
......@@ -178,14 +191,21 @@ public class EnterpriseController extends WebBaseController {
return page;
}
private Page<YwWxEnterpriseDTO> queryOpen(BasePageInfo pageInfo, String keyword, String gicEnterpriseName, Integer gicContactHelper, String version, List<String> wxEnterpriseIdInList, Set<String> wxEnterpriseIdSetInCache) {
private Page<YwWxEnterpriseDTO> queryOpen(BasePageInfo pageInfo,
String keyword,
String gicEnterpriseName,
Integer gicContactHelper,
String version,
List<String> wxEnterpriseIdInList,
Set<String> wxEnterpriseIdSetInCache,
String loginUserId) {
// 查询开启状态
if (haveCondition(gicEnterpriseName)) {
// 有条件-取交集
wxEnterpriseIdSetInCache.retainAll(wxEnterpriseIdInList);
}
List<String> queryList = new ArrayList<>(wxEnterpriseIdSetInCache);
Page<YwWxEnterpriseDTO> page = wxEnterpriseApiService.list(pageInfo, keyword, queryList, gicContactHelper, version, null);
Page<YwWxEnterpriseDTO> page = wxEnterpriseApiService.list(pageInfo, keyword, queryList, gicContactHelper, version, null, loginUserId);
page.getResult().forEach(one -> {
one.setVersion("3.0");
one.setBuyDate(new Date());
......@@ -198,9 +218,15 @@ public class EnterpriseController extends WebBaseController {
return page;
}
private Page<YwWxEnterpriseDTO> queryClose(BasePageInfo pageInfo, String keyword, Integer gicContactHelper, String version, List<String> wxEnterpriseIdInList, Set<String> wxEnterpriseIdSetInCache) {
private Page<YwWxEnterpriseDTO> queryClose(BasePageInfo pageInfo,
String keyword,
Integer gicContactHelper,
String version,
List<String> wxEnterpriseIdInList,
Set<String> wxEnterpriseIdSetInCache,
String loginUserId) {
// 查询关闭状态
Page<YwWxEnterpriseDTO> page = wxEnterpriseApiService.list(pageInfo, keyword, wxEnterpriseIdInList, gicContactHelper, version, new ArrayList<>(wxEnterpriseIdSetInCache));
Page<YwWxEnterpriseDTO> page = wxEnterpriseApiService.list(pageInfo, keyword, wxEnterpriseIdInList, gicContactHelper, version, new ArrayList<>(wxEnterpriseIdSetInCache), loginUserId);
page.getResult().forEach(one -> {
one.setVersion("3.0");
one.setBuyDate(new Date());
......@@ -326,8 +352,6 @@ public class EnterpriseController extends WebBaseController {
}
/**
* 更新新的外部联系人id
*
......@@ -361,7 +385,7 @@ public class EnterpriseController extends WebBaseController {
if (wxEnterpriseDTO == null) {
return resultResponse(HaoBanErrCode.ERR_20001);
}
wxEnterpriseApiService.agreeExternalUseridFlag(wxEnterpriseDTO.getWxEnterpriseId(),1);
wxEnterpriseApiService.agreeExternalUseridFlag(wxEnterpriseDTO.getWxEnterpriseId(), 1);
return resultResponse(HaoBanErrCode.ERR_1);
} else {
return resultResponse(HaoBanErrCode.ERR_0);
......
......@@ -23,6 +23,11 @@ public class Config {
@Value("${memberOpenPage}")
private String memberOpenPage;
@Value("${historyMbrMassEnterpriseWhiteList}")
private String historyMbrMassEnterpriseWhiteList;
@Value("${historyMbrMassEnterpriseWhiteList}")
private String historyMbrMassOperWhiteList;
public String getMemberOpenPage() {
return memberOpenPage;
}
......@@ -70,4 +75,20 @@ public class Config {
public void setWxSuiteid(String wxSuiteid) {
this.wxSuiteid = wxSuiteid;
}
public String getHistoryMbrMassEnterpriseWhiteList() {
return historyMbrMassEnterpriseWhiteList;
}
public void setHistoryMbrMassEnterpriseWhiteList(String historyMbrMassEnterpriseWhiteList) {
this.historyMbrMassEnterpriseWhiteList = historyMbrMassEnterpriseWhiteList;
}
public String getHistoryMbrMassOperWhiteList() {
return historyMbrMassOperWhiteList;
}
public void setHistoryMbrMassOperWhiteList(String historyMbrMassOperWhiteList) {
this.historyMbrMassOperWhiteList = historyMbrMassOperWhiteList;
}
}
......@@ -27,8 +27,6 @@ public interface StaffDepartmentRelatedMapper {
void deleteCode(TabHaobanStaffDepartmentRelated dto);
List<TabHaobanStaffDepartmentRelated> listStaffDepartmentByStaffId(String staffId);
Page<TabHaobanStaffDepartmentRelated> pageStaff(String departmentId, Integer activeFlag, String keyword);
TabHaobanStaffDepartmentRelated getById(String staffDepartmentRelatedId);
......@@ -55,4 +53,9 @@ public interface StaffDepartmentRelatedMapper {
List<TabHaobanStaffDepartmentRelated> listByDepartmentIds(@Param("departmentIds")List<String> departmentIds);
int cleanStaffDepartment(@Param("wxEnterpriseId")String wxEnterpriseId,@Param("staffIds")List<String> staffIds);
List<TabHaobanStaffDepartmentRelated> listByWxEnterpriseIdAndStaffId(
@Param("wxEnterpriseId") String wxEnterpriseId,
@Param("staffId") String staffId
);
}
\ No newline at end of file
......@@ -36,6 +36,20 @@ public interface TabHaobanExternalClerkRelatedMapper {
List<TabHaobanExternalClerkRelated> listByExTernalUseridAndWxUserId(@Param("externalUserid") String externalUserid, @Param("userId") String wxUserId);
/**
* 查询该会员该企业下的好友关系
*
* @param externalUserid 外部用户标识
* @param wxEnterpriseId wx企业标识
* @param statusFlags 状态标志
* @return {@link List<TabHaobanExternalClerkRelated> }
* @author mozhu
* @date 2022-02-10 10:11:21
*/
List<TabHaobanExternalClerkRelated> listByExTernalUseridAndWxEnterpriseId(@Param("externalUserid") String externalUserid,
@Param("wxEnterpriseId") String wxEnterpriseId,
@Param("statusFlags") List<String> statusFlags);
List<TabHaobanExternalClerkRelated> listByExTernalUseridAndWxUserIdAllStatus(@Param("wxEnterpriseId") String wxEnterpriseId, @Param("externalUserid") String externalUserid, @Param("userId") String wxUserId);
List<TabHaobanExternalClerkRelated> listByEnterpriseIdAndDate(@Param("enterpriseId") String enterpriseId, @Param("date") Date date);
......@@ -191,7 +205,8 @@ public interface TabHaobanExternalClerkRelatedMapper {
* @param wxEnterpriseId
* @return
*/
List<TabHaobanExternalClerkRelated> listByExternalUserId(@Param("wxEnterpriseId") String wxEnterpriseId, @Param("externalUserId") String externalUserId);
List<TabHaobanExternalClerkRelated> listByExternalUserId(@Param("wxEnterpriseId") String wxEnterpriseId,
@Param("externalUserId") String externalUserId);
/**
* 根据会员id更新新老会员id
......@@ -267,4 +282,19 @@ public interface TabHaobanExternalClerkRelatedMapper {
@Param("enterpriseId") String enterpriseId,
@Param("wxUserId") String wxUserId,
@Param("clerkId") String clerkId);
/**
* 客户好友需触达列表
*
* @param wxEnterpriseId wx企业标识
* @param wxUserId wx用户id
* @param enterpriseId
* @param externalUserId
* @return {@link TabHaobanExternalClerkRelated }
* @author mozhu
* @date 2022-02-11 14:15:25
*/
TabHaobanExternalClerkRelated getByEnterpriseIdAndExternalUserId(@Param("wxEnterpriseId") String wxEnterpriseId, @Param("wxUserId") String wxUserId,
@Param("enterpriseId") String enterpriseId, @Param("externalUserId") String externalUserId);
}
\ No newline at end of file
package com.gic.haoban.manage.service.dao.mapper;
import java.util.Date;
import com.gic.haoban.manage.service.entity.TabHaobanFriendSetting;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* 加好友配置表(TabHaobanFriendSetting)表数据库访问层
*
* @author xugaojun
* @date 2022-02-09 14:37:26
*/
@Repository
public interface TabHaobanFriendSettingMapper {
/**
* 新增数据
*
* @param tabHaobanFriendSetting 实例对象
* @return 影响行数
*/
int insert(TabHaobanFriendSetting tabHaobanFriendSetting);
/**
* 修改数据
*
* @param tabHaobanFriendSetting 实例对象
* @return 影响行数
*/
int update(TabHaobanFriendSetting tabHaobanFriendSetting);
/**
* 通过主键删除数据
*
* @param friendSettingId 主键
* @return 影响行数
*/
int deleteById(Long friendSettingId);
/**
* 通过ID查询单条数据
*
* @param friendSettingId 主键
* @return 实例对象
*/
TabHaobanFriendSetting queryById(Long friendSettingId);
/**
* 通过实体作为筛选条件查询
*
* @param tabHaobanFriendSetting 实例对象
* @return 对象列表
*/
List<TabHaobanFriendSetting> queryAll(TabHaobanFriendSetting tabHaobanFriendSetting);
/**
* 分页总数
*
* @return 对象列表
*/
int queryCountByPage();
/**
* 分页列表
*
* @param offset 查询起始位置
* @param limit 查询条数
* @return 对象列表
*/
List<TabHaobanFriendSetting> queryListByPage(@Param("offset") int offset, @Param("limit") int limit);
/**
* desc: 根据微信企业id查询单条记录
*
* @param wxEnterpriseId 微信企业id
* @return : {@link TabHaobanFriendSetting}
* @author : YongEn
* @date : 2022/2/11
*/
TabHaobanFriendSetting getByWxEnterpriseId(@Param("wxEnterpriseId") String wxEnterpriseId);
}
......@@ -2,26 +2,45 @@ package com.gic.haoban.manage.service.dao.mapper;
import com.gic.haoban.manage.service.entity.TabWelcome;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@Mapper
public interface TabHaobanWelcomeMapper {
/**
*/
int deleteByPrimaryKey(String welcomeId);
/**
*/
int insert(TabWelcome record);
/**
*/
TabWelcome selectByPrimaryKey(String welcomeId);
int updateByPrimaryKeySelective(TabWelcome record);
TabWelcome selectByWxEnterpriseId(String wxEnterpriseId);
/**
* desc: 根据微信企业id查询列表
*
* @param wxEnterpriseId 微信企业id
* @param title 标题
* @return : {@link List< TabWelcome>}
* @author : YongEn
* @date : 2022/2/9
*/
int updateByPrimaryKeySelective(TabWelcome record);
List<TabWelcome> listByWxEnterpriseId(@Param("wxEnterpriseId") String wxEnterpriseId, @Param("title") String title);
/**
* desc: 根据微信企业id查询数量
*
* @param wxEnterpriseId 微信企业id
* @return : {@link long}
* @author : YongEn
* @date : 2022/2/10
*/
TabWelcome selectByWxEnterpriseId(String wxEnterpriseId);
long countByWxEnterpriseId(@Param("wxEnterpriseId") String wxEnterpriseId);
}
\ No newline at end of file
package com.gic.haoban.manage.service.dao.mapper;
import com.gic.haoban.manage.service.entity.TabHaobanWelcomeMedia;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* 欢迎语媒体表(TabHaobanWelcomeMedia)表数据库访问层
*
* @author xugaojun
* @since 2022-02-09 14:47:22
*/
public interface TabHaobanWelcomeMediaMapper {
/**
* 通过ID查询单条数据
*
* @param welcomeMediaId 主键
* @return 实例对象
*/
TabHaobanWelcomeMedia queryById(Long welcomeMediaId);
/**
* 新增数据
*
* @param tabHaobanWelcomeMedia 实例对象
* @return 影响行数
*/
int insert(TabHaobanWelcomeMedia tabHaobanWelcomeMedia);
/**
* 修改数据
*
* @param tabHaobanWelcomeMedia 实例对象
* @return 影响行数
*/
int update(TabHaobanWelcomeMedia tabHaobanWelcomeMedia);
/**
* desc: 通过欢迎语id删除(软删)
*
* @param welcomeId 欢迎语id
* @return : {@link int}
* @author : YongEn
* @date : 2022/2/10
*/
int removeByWelcomeId(@Param("welcomeId") String welcomeId);
/**
* desc: 通过欢迎语id查询列表
*
* @param welcomeId 欢迎语id
* @return : {@link List< TabHaobanWelcomeMedia>}
* @author : YongEn
* @date : 2022/2/11
*/
List<TabHaobanWelcomeMedia> listByWelcomeId(@Param("welcomeId") String welcomeId);
}
package com.gic.haoban.manage.service.dao.mapper;
import com.gic.haoban.manage.service.entity.TabHaobanWelcomeSuitRang;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Set;
/**
* 欢迎语适用范围表(TabHaobanWelcomeSuitRang)表数据库访问层
*
* @author xugaojun
* @since 2022-02-10 16:40:16
*/
public interface TabHaobanWelcomeSuitRangMapper {
/**
* 通过ID查询单条数据
*
* @param welcomeSuitRangId 主键
* @return 实例对象
*/
TabHaobanWelcomeSuitRang queryById(Long welcomeSuitRangId);
/**
* 查询指定行数据
*
* @param offset 查询起始位置
* @param limit 查询条数
* @return 对象列表
*/
List<TabHaobanWelcomeSuitRang> queryAllByLimit(@Param("offset") int offset, @Param("limit") int limit);
/**
* 通过实体作为筛选条件查询
*
* @param tabHaobanWelcomeSuitRang 实例对象
* @return 对象列表
*/
List<TabHaobanWelcomeSuitRang> queryAll(TabHaobanWelcomeSuitRang tabHaobanWelcomeSuitRang);
/**
* 新增数据
*
* @param tabHaobanWelcomeSuitRang 实例对象
* @return 影响行数
*/
int insert(TabHaobanWelcomeSuitRang tabHaobanWelcomeSuitRang);
/**
* 修改数据
*
* @param tabHaobanWelcomeSuitRang 实例对象
* @return 影响行数
*/
int update(TabHaobanWelcomeSuitRang tabHaobanWelcomeSuitRang);
/**
* 通过主键删除数据
*
* @param welcomeSuitRangId 主键
* @return 影响行数
*/
int deleteById(Long welcomeSuitRangId);
/**
* desc: 根据微信企业id与部门id列表查询
*
* @param wxEnterpriseId 微信企业id
* @param departmentIdList 部门id列表
* @return : {@link List< TabHaobanWelcomeSuitRang>}
* @author : YongEn
* @date : 2022/2/11
*/
List<TabHaobanWelcomeSuitRang> listByWxEnterpriseIdAndDeptList(
@Param("wxEnterpriseId") String wxEnterpriseId,
@Param("departmentIdList") List<String> departmentIdList
);
/**
* desc: 批量新增
*
* @param welcomeSuitRangList 实体类列表
* @return : {@link int}
* @author : YongEn
* @date : 2022/2/11
*/
int batchInsert(@Param("welcomeSuitRangList") List<TabHaobanWelcomeSuitRang> welcomeSuitRangList);
/**
* desc: 根据适用部门批量删除(软删)
*
* @param suitDepartmentIdSet 列表
* @param wxEnterpriseId 微信企业id
* @param welcomeId 欢迎语id
* @return : {@link int}
* @author : YongEn
* @date : 2022/2/11
*/
int batchDeleteBySuitDepartmentIdSet(
@Param("welcomeId") String welcomeId,
@Param("wxEnterpriseId") String wxEnterpriseId,
@Param("suitDepartmentIdSet") Set<String> suitDepartmentIdSet
);
/**
* desc: 根据适用员工批量删除(软删除)
*
* @param suitStaffIdSet 列表
* @param wxEnterpriseId 微信企业id
* @param welcomeId 欢迎语id
* @return : {@link int}
* @author : YongEn
* @date : 2022/2/11
*/
int batchDeleteBySuitStaffIdSet(
@Param("welcomeId") String welcomeId,
@Param("wxEnterpriseId") String wxEnterpriseId,
@Param("suitStaffIdSet") Set<String> suitStaffIdSet
);
}
package com.gic.haoban.manage.service.entity;
/**
* 加好友配置表(TabHaobanFriendSetting)实体类
*
* @author xugaojun
* @date 2022-02-09 14:37:24
*/
import java.util.Date;
public class TabHaobanFriendSetting {
/**
* 加好友配置id
*/
private Long friendSettingId;
/**
* 微信企业id
*/
private String wxEnterpriseId;
/**
* 欢迎语配置类型 :
* 1 发送好办欢迎语文案+小程序卡片(附带导购参数)
* 2 发送好办欢迎语文案+公众号二维码(附带导购参数)
* 3 发送好办欢迎语文案
* 4 不发送好办欢迎语,用企微欢迎语
*/
private Integer friendSettingType;
/**
* 更新人id
*/
private String updateId;
/**
* 更新人名称
*/
private String updateName;
/**
* 创建时间
*/
private Date createTime;
/**
* 更新时间
*/
private Date updateTime;
/**
* 是否删除0否1是
*/
private Integer deleteFlag;
public Long getFriendSettingId() {
return friendSettingId;
}
public void setFriendSettingId(Long friendSettingId) {
this.friendSettingId = friendSettingId;
}
public String getWxEnterpriseId() {
return wxEnterpriseId;
}
public void setWxEnterpriseId(String wxEnterpriseId) {
this.wxEnterpriseId = wxEnterpriseId;
}
public Integer getFriendSettingType() {
return friendSettingType;
}
public void setFriendSettingType(Integer friendSettingType) {
this.friendSettingType = friendSettingType;
}
public String getUpdateId() {
return updateId;
}
public void setUpdateId(String updateId) {
this.updateId = updateId;
}
public String getUpdateName() {
return updateName;
}
public void setUpdateName(String updateName) {
this.updateName = updateName;
}
public Date getCreateTime() {
return createTime;
}
public void setCreateTime(Date createTime) {
this.createTime = createTime;
}
public Date getUpdateTime() {
return updateTime;
}
public void setUpdateTime(Date updateTime) {
this.updateTime = updateTime;
}
public Integer getDeleteFlag() {
return deleteFlag;
}
public void setDeleteFlag(Integer deleteFlag) {
this.deleteFlag = deleteFlag;
}
}
package com.gic.haoban.manage.service.entity;
import java.io.Serializable;
import java.util.Date;
/**
* 欢迎语媒体表(TabHaobanWelcomeMedia)实体类
*
* @author xugaojun
* @since 2022-02-09 14:47:20
*/
public class TabHaobanWelcomeMedia implements Serializable {
private static final long serialVersionUID = -15936685674419727L;
/**
* 欢迎语媒体id
*/
private Long welcomeMediaId;
/**
* 微信企业id
*/
private String wxEnterpriseId;
/**
* 欢迎语id
*/
private String welcomeId;
/**
* 媒体标题
*/
private String mediaTitle;
/**
* 媒体类型 1图片 2视频 3文件 4链接
*/
private Integer mediaType;
/**
* 媒体文件路径,保存上传路径
*/
private String mediaUrl;
/**
* 创建时间
*/
private Date createTime;
/**
* 更新时间
*/
private Date updateTime;
/**
* 是否删除0否1是
*/
private Integer deleteFlag;
public Long getWelcomeMediaId() {
return welcomeMediaId;
}
public void setWelcomeMediaId(Long welcomeMediaId) {
this.welcomeMediaId = welcomeMediaId;
}
public String getWxEnterpriseId() {
return wxEnterpriseId;
}
public void setWxEnterpriseId(String wxEnterpriseId) {
this.wxEnterpriseId = wxEnterpriseId;
}
public String getWelcomeId() {
return welcomeId;
}
public void setWelcomeId(String welcomeId) {
this.welcomeId = welcomeId;
}
public String getMediaTitle() {
return mediaTitle;
}
public void setMediaTitle(String mediaTitle) {
this.mediaTitle = mediaTitle;
}
public Integer getMediaType() {
return mediaType;
}
public void setMediaType(Integer mediaType) {
this.mediaType = mediaType;
}
public String getMediaUrl() {
return mediaUrl;
}
public void setMediaUrl(String mediaUrl) {
this.mediaUrl = mediaUrl;
}
public Date getCreateTime() {
return createTime;
}
public void setCreateTime(Date createTime) {
this.createTime = createTime;
}
public Date getUpdateTime() {
return updateTime;
}
public void setUpdateTime(Date updateTime) {
this.updateTime = updateTime;
}
public Integer getDeleteFlag() {
return deleteFlag;
}
public void setDeleteFlag(Integer deleteFlag) {
this.deleteFlag = deleteFlag;
}
@Override
public String toString() {
return "TabHaobanWelcomeMedia{" +
"welcomeMediaId=" + welcomeMediaId +
", wxEnterpriseId='" + wxEnterpriseId + '\'' +
", welcomeId='" + welcomeId + '\'' +
", mediaTitle='" + mediaTitle + '\'' +
", mediaType=" + mediaType +
", mediaUrl='" + mediaUrl + '\'' +
", createTime=" + createTime +
", updateTime=" + updateTime +
", deleteFlag=" + deleteFlag +
'}';
}
}
package com.gic.haoban.manage.service.entity;
import java.io.Serializable;
import java.util.Date;
/**
* 欢迎语适用范围表(TabHaobanWelcomeSuitRang)实体类
*
* @author xugaojun
* @since 2022-02-10 16:40:15
*/
public class TabHaobanWelcomeSuitRang implements Serializable {
private static final long serialVersionUID = -99086648135131874L;
/**
* 主键id
*/
private Long welcomeSuitRangId;
/**
* 微信企业id
*/
private String wxEnterpriseId;
/**
* 欢迎语id
*/
private String welcomeId;
/**
* 适用范围类型 1部门 2员工
*/
private Integer suitType;
/**
* 适用部门id
*/
private String suitDepartmentId;
/**
* 适用部门名称
*/
private String suitDepartmentName;
/**
* 适用员工id
*/
private String suitStaffId;
/**
* 适用员工名称
*/
private String suitStaffName;
/**
* 员工所属部门id
*/
private String staffBelongDepartmentId;
/**
* 员工所属部门名称
*/
private String staffBelongDepartmentName;
/**
* 选中类型(部门)1被选中 2关联选中
*/
private Integer selectType;
/**
* 创建时间
*/
private Date createTime;
/**
* 更新时间
*/
private Date updateTime;
/**
* 是否删除0否1是
*/
private Integer deleteFlag;
public Long getWelcomeSuitRangId() {
return welcomeSuitRangId;
}
public void setWelcomeSuitRangId(Long welcomeSuitRangId) {
this.welcomeSuitRangId = welcomeSuitRangId;
}
public String getWxEnterpriseId() {
return wxEnterpriseId;
}
public void setWxEnterpriseId(String wxEnterpriseId) {
this.wxEnterpriseId = wxEnterpriseId;
}
public String getWelcomeId() {
return welcomeId;
}
public void setWelcomeId(String welcomeId) {
this.welcomeId = welcomeId;
}
public Integer getSuitType() {
return suitType;
}
public void setSuitType(Integer suitType) {
this.suitType = suitType;
}
public String getSuitDepartmentId() {
return suitDepartmentId;
}
public void setSuitDepartmentId(String suitDepartmentId) {
this.suitDepartmentId = suitDepartmentId;
}
public String getSuitDepartmentName() {
return suitDepartmentName;
}
public void setSuitDepartmentName(String suitDepartmentName) {
this.suitDepartmentName = suitDepartmentName;
}
public String getSuitStaffId() {
return suitStaffId;
}
public void setSuitStaffId(String suitStaffId) {
this.suitStaffId = suitStaffId;
}
public String getSuitStaffName() {
return suitStaffName;
}
public void setSuitStaffName(String suitStaffName) {
this.suitStaffName = suitStaffName;
}
public String getStaffBelongDepartmentId() {
return staffBelongDepartmentId;
}
public void setStaffBelongDepartmentId(String staffBelongDepartmentId) {
this.staffBelongDepartmentId = staffBelongDepartmentId;
}
public String getStaffBelongDepartmentName() {
return staffBelongDepartmentName;
}
public void setStaffBelongDepartmentName(String staffBelongDepartmentName) {
this.staffBelongDepartmentName = staffBelongDepartmentName;
}
public Integer getSelectType() {
return selectType;
}
public void setSelectType(Integer selectType) {
this.selectType = selectType;
}
public Date getCreateTime() {
return createTime;
}
public void setCreateTime(Date createTime) {
this.createTime = createTime;
}
public Date getUpdateTime() {
return updateTime;
}
public void setUpdateTime(Date updateTime) {
this.updateTime = updateTime;
}
public Integer getDeleteFlag() {
return deleteFlag;
}
public void setDeleteFlag(Integer deleteFlag) {
this.deleteFlag = deleteFlag;
}
}
......@@ -48,15 +48,25 @@ public class TabWelcome implements Serializable {
private Integer statusFlag;
/**
*
* 创建时间
*/
private Date createTime;
/**
*
* 更新时间
*/
private Date updateTime;
/**
* 操作人id
*/
private String operatorId;
/**
* 操作人名称
*/
private String operatorName;
public String getWelcomeId() {
return welcomeId;
}
......@@ -128,4 +138,20 @@ public class TabWelcome implements Serializable {
public void setWelcomeImg(String welcomeImg) {
this.welcomeImg = welcomeImg;
}
public String getOperatorId() {
return operatorId;
}
public void setOperatorId(String operatorId) {
this.operatorId = operatorId;
}
public String getOperatorName() {
return operatorName;
}
public void setOperatorName(String operatorName) {
this.operatorName = operatorName;
}
}
\ No newline at end of file
......@@ -15,6 +15,8 @@ public class ExternalUserPojo implements Serializable{
private String addCreateTime;
private String externalUserId;
private String wxUserId;
/**
* 好友类型
* 1表示该外部联系人是微信用户,2表示该外部联系人是企业微信用户
......@@ -76,8 +78,12 @@ public class ExternalUserPojo implements Serializable{
public void setExternalUserId(String externalUserId) {
this.externalUserId = externalUserId;
}
public String getWxUserId() {
return wxUserId;
}
public void setWxUserId(String wxUserId) {
this.wxUserId = wxUserId;
}
}
package com.gic.haoban.manage.service.pojo.bo.welcome;
/**
* desc:加好友配置bo
*
* @author: YongEn
* @date: 2022/2/8
**/
public class FriendSettingDetailBO {
/**
* 加好友配置id
*/
private Long friendSettingId;
/**
* 微信企业id
*/
private String wxEnterpriseId;
/**
* 欢迎语配置类型 :
* 1 发送好办欢迎语文案+小程序卡片(附带导购参数)
* 2 发送好办欢迎语文案+公众号二维码(附带导购参数)
* 3 发送好办欢迎语文案
* 4 不发送好办欢迎语,用企微欢迎语
* @see com.gic.haoban.manage.api.enums.FriendSettingTypeEnum
*/
private Integer friendSettingType;
public Long getFriendSettingId() {
return friendSettingId;
}
public void setFriendSettingId(Long friendSettingId) {
this.friendSettingId = friendSettingId;
}
public String getWxEnterpriseId() {
return wxEnterpriseId;
}
public void setWxEnterpriseId(String wxEnterpriseId) {
this.wxEnterpriseId = wxEnterpriseId;
}
public Integer getFriendSettingType() {
return friendSettingType;
}
public void setFriendSettingType(Integer friendSettingType) {
this.friendSettingType = friendSettingType;
}
@Override
public String toString() {
return "FriendSettingDetailBO{" +
"friendSettingId=" + friendSettingId +
", wxEnterpriseId='" + wxEnterpriseId + '\'' +
", friendSettingType=" + friendSettingType +
'}';
}
}
package com.gic.haoban.manage.service.pojo.bo.welcome;
/**
* desc:保存加好友配置bo
*
* @author: YongEn
* @date: 2022/2/8
**/
public class SaveFriendSettingBO {
/**
* 加好友配置id
*/
private Long friendSettingId;
/**
* 微信企业id
*/
private String wxEnterpriseId;
/**
* 欢迎语配置类型 :
* 1 发送好办欢迎语文案+小程序卡片(附带导购参数)
* 2 发送好办欢迎语文案+公众号二维码(附带导购参数)
* 3 发送好办欢迎语文案
* 4 不发送好办欢迎语,用企微欢迎语
*/
private Integer friendSettingType;
/**
* 更新人id
*/
private String updateId;
/**
* 更新人名称
*/
private String updateName;
public Long getFriendSettingId() {
return friendSettingId;
}
public void setFriendSettingId(Long friendSettingId) {
this.friendSettingId = friendSettingId;
}
public String getWxEnterpriseId() {
return wxEnterpriseId;
}
public void setWxEnterpriseId(String wxEnterpriseId) {
this.wxEnterpriseId = wxEnterpriseId;
}
public Integer getFriendSettingType() {
return friendSettingType;
}
public void setFriendSettingType(Integer friendSettingType) {
this.friendSettingType = friendSettingType;
}
public String getUpdateId() {
return updateId;
}
public void setUpdateId(String updateId) {
this.updateId = updateId;
}
public String getUpdateName() {
return updateName;
}
public void setUpdateName(String updateName) {
this.updateName = updateName;
}
@Override
public String toString() {
return "SaveFriendSettingBO{" +
"friendSettingId=" + friendSettingId +
", wxEnterpriseId='" + wxEnterpriseId + '\'' +
", friendSettingType=" + friendSettingType +
'}';
}
}
package com.gic.haoban.manage.service.pojo.bo.welcome;
import java.util.List;
/**
* desc:保存欢迎语bo
*
* @author: YongEn
* @date: 2022/2/8
**/
public class SaveWelcomeBO {
/**
* 欢迎语id
*/
private String welcomeId;
/**
* 微信企业id
*/
private String wxEnterpriseId;
/**
* 标题
*/
private String title;
/**
* 内容
*/
private String welcomeContent;
/**
* 操作人id
*/
private String operatorId;
/**
* 操作人名称
*/
private String operatorName;
/**
* 欢迎语媒体列表
*/
private List<SaveWelcomeMediaBO> mediaList;
/**
* 适用部门新增列表
*/
private List<WelcomeSuitDepartmentBO> suitDepartmentAddList;
/**
* 适用部门删除列表
*/
private List<WelcomeSuitDepartmentBO> suitDepartmentDeleteList;
/**
* 适用员工新增列表
*/
private List<WelcomeSuitStaffBO> suitStaffAddList;
/**
* 适用员工删除列表
*/
private List<WelcomeSuitStaffBO> suitStaffDeleteList;
public String getWelcomeId() {
return welcomeId;
}
public void setWelcomeId(String welcomeId) {
this.welcomeId = welcomeId;
}
public String getWxEnterpriseId() {
return wxEnterpriseId;
}
public void setWxEnterpriseId(String wxEnterpriseId) {
this.wxEnterpriseId = wxEnterpriseId;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getWelcomeContent() {
return welcomeContent;
}
public void setWelcomeContent(String welcomeContent) {
this.welcomeContent = welcomeContent;
}
public List<SaveWelcomeMediaBO> getMediaList() {
return mediaList;
}
public void setMediaList(List<SaveWelcomeMediaBO> mediaList) {
this.mediaList = mediaList;
}
public String getOperatorId() {
return operatorId;
}
public void setOperatorId(String operatorId) {
this.operatorId = operatorId;
}
public String getOperatorName() {
return operatorName;
}
public void setOperatorName(String operatorName) {
this.operatorName = operatorName;
}
public List<WelcomeSuitDepartmentBO> getSuitDepartmentAddList() {
return suitDepartmentAddList;
}
public void setSuitDepartmentAddList(List<WelcomeSuitDepartmentBO> suitDepartmentAddList) {
this.suitDepartmentAddList = suitDepartmentAddList;
}
public List<WelcomeSuitDepartmentBO> getSuitDepartmentDeleteList() {
return suitDepartmentDeleteList;
}
public void setSuitDepartmentDeleteList(List<WelcomeSuitDepartmentBO> suitDepartmentDeleteList) {
this.suitDepartmentDeleteList = suitDepartmentDeleteList;
}
public List<WelcomeSuitStaffBO> getSuitStaffAddList() {
return suitStaffAddList;
}
public void setSuitStaffAddList(List<WelcomeSuitStaffBO> suitStaffAddList) {
this.suitStaffAddList = suitStaffAddList;
}
public List<WelcomeSuitStaffBO> getSuitStaffDeleteList() {
return suitStaffDeleteList;
}
public void setSuitStaffDeleteList(List<WelcomeSuitStaffBO> suitStaffDeleteList) {
this.suitStaffDeleteList = suitStaffDeleteList;
}
@Override
public String toString() {
return "SaveWelcomeBO{" +
"welcomeId='" + welcomeId + '\'' +
", wxEnterpriseId='" + wxEnterpriseId + '\'' +
", title='" + title + '\'' +
", welcomeContent='" + welcomeContent + '\'' +
", operatorId='" + operatorId + '\'' +
", operatorName='" + operatorName + '\'' +
", mediaList=" + mediaList +
", suitDepartmentAddList=" + suitDepartmentAddList +
", suitDepartmentDeleteList=" + suitDepartmentDeleteList +
", suitStaffAddList=" + suitStaffAddList +
", suitStaffDeleteList=" + suitStaffDeleteList +
'}';
}
}
package com.gic.haoban.manage.service.pojo.bo.welcome;
/**
* desc:保存欢迎语媒体bo
*
* @author: YongEn
* @date: 2022/2/10
**/
public class SaveWelcomeMediaBO {
/**
* 媒体标题
*/
private String mediaTitle;
/**
* 媒体路径
*/
private String mediaUrl;
/**
* 媒体类型
* @see com.gic.haoban.manage.api.enums.WelcomeMediaTypeEnum
*/
private Integer mediaType;
public String getMediaTitle() {
return mediaTitle;
}
public void setMediaTitle(String mediaTitle) {
this.mediaTitle = mediaTitle;
}
public String getMediaUrl() {
return mediaUrl;
}
public void setMediaUrl(String mediaUrl) {
this.mediaUrl = mediaUrl;
}
public Integer getMediaType() {
return mediaType;
}
public void setMediaType(Integer mediaType) {
this.mediaType = mediaType;
}
@Override
public String toString() {
return "SaveWelcomeMediaBO{" +
"mediaTitle='" + mediaTitle + '\'' +
", mediaUrl='" + mediaUrl + '\'' +
", mediaType=" + mediaType +
'}';
}
}
package com.gic.haoban.manage.service.pojo.bo.welcome;
import java.util.List;
/**
* desc:欢迎语详情bo
*
* @author: YongEn
* @date: 2022/2/8
**/
public class WelcomeDetailBO {
/**
* 欢迎语id
*/
private String welcomeId;
/**
* 微信企业id
*/
private String wxEnterpriseId;
/**
* 标题
*/
private String title;
/**
* 内容
*/
private String welcomeContent;
/**
* 0关闭 1开启
*/
private Integer openFlag;
/**
* 适用部门列表
*/
private List<WelcomeSuitDepartmentBO> suitDepartmentList;
/**
* 适用员工列表
*/
private List<WelcomeSuitStaffBO> suitStaffList;
/**
* 欢迎语媒体列表
*/
private List<WelcomeMediaBO> welcomeMediaList;
public String getWelcomeId() {
return welcomeId;
}
public void setWelcomeId(String welcomeId) {
this.welcomeId = welcomeId;
}
public String getWxEnterpriseId() {
return wxEnterpriseId;
}
public void setWxEnterpriseId(String wxEnterpriseId) {
this.wxEnterpriseId = wxEnterpriseId;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getWelcomeContent() {
return welcomeContent;
}
public void setWelcomeContent(String welcomeContent) {
this.welcomeContent = welcomeContent;
}
public Integer getOpenFlag() {
return openFlag;
}
public void setOpenFlag(Integer openFlag) {
this.openFlag = openFlag;
}
public List<WelcomeMediaBO> getWelcomeMediaList() {
return welcomeMediaList;
}
public void setWelcomeMediaList(List<WelcomeMediaBO> welcomeMediaList) {
this.welcomeMediaList = welcomeMediaList;
}
public List<WelcomeSuitDepartmentBO> getSuitDepartmentList() {
return suitDepartmentList;
}
public void setSuitDepartmentList(List<WelcomeSuitDepartmentBO> suitDepartmentList) {
this.suitDepartmentList = suitDepartmentList;
}
public List<WelcomeSuitStaffBO> getSuitStaffList() {
return suitStaffList;
}
public void setSuitStaffList(List<WelcomeSuitStaffBO> suitStaffList) {
this.suitStaffList = suitStaffList;
}
@Override
public String toString() {
return "WelcomeDetailBO{" +
"welcomeId='" + welcomeId + '\'' +
", wxEnterpriseId='" + wxEnterpriseId + '\'' +
", title='" + title + '\'' +
", welcomeContent='" + welcomeContent + '\'' +
", openFlag=" + openFlag +
", welcomeMediaList=" + welcomeMediaList +
'}';
}
}
package com.gic.haoban.manage.service.pojo.bo.welcome;
import java.util.Date;
import java.util.List;
/**
* desc:欢迎语列表bo
*
* @author: YongEn
* @date: 2022/2/8
**/
public class WelcomeListBO {
/**
* 欢迎语id
*/
private String welcomeId;
/**
* 微信企业id
*/
private String wxEnterpriseId;
/**
* 标题
*/
private String title;
/**
* 内容
*/
private String welcomeContent;
/**
* 0关闭 1开启
*/
private Integer openFlag;
/**
* 更新时间
*/
private Date updateTime;
/**
* 操作人id
*/
private String operatorId;
/**
* 操作人名称
*/
private String operatorName;
/**
* 适用部门列表
*/
private List<WelcomeSuitDepartmentBO> suitDepartmentList;
/**
* 适用员工列表
*/
private List<WelcomeSuitStaffBO> suitStaffList;
/**
* 欢迎语媒体列表
*/
private List<WelcomeMediaBO> welcomeMediaList;
public String getWelcomeId() {
return welcomeId;
}
public void setWelcomeId(String welcomeId) {
this.welcomeId = welcomeId;
}
public String getWxEnterpriseId() {
return wxEnterpriseId;
}
public void setWxEnterpriseId(String wxEnterpriseId) {
this.wxEnterpriseId = wxEnterpriseId;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getWelcomeContent() {
return welcomeContent;
}
public void setWelcomeContent(String welcomeContent) {
this.welcomeContent = welcomeContent;
}
public Integer getOpenFlag() {
return openFlag;
}
public void setOpenFlag(Integer openFlag) {
this.openFlag = openFlag;
}
public List<WelcomeMediaBO> getWelcomeMediaList() {
return welcomeMediaList;
}
public void setWelcomeMediaList(List<WelcomeMediaBO> welcomeMediaList) {
this.welcomeMediaList = welcomeMediaList;
}
public Date getUpdateTime() {
return updateTime;
}
public void setUpdateTime(Date updateTime) {
this.updateTime = updateTime;
}
public String getOperatorId() {
return operatorId;
}
public void setOperatorId(String operatorId) {
this.operatorId = operatorId;
}
public String getOperatorName() {
return operatorName;
}
public void setOperatorName(String operatorName) {
this.operatorName = operatorName;
}
public List<WelcomeSuitDepartmentBO> getSuitDepartmentList() {
return suitDepartmentList;
}
public void setSuitDepartmentList(List<WelcomeSuitDepartmentBO> suitDepartmentList) {
this.suitDepartmentList = suitDepartmentList;
}
public List<WelcomeSuitStaffBO> getSuitStaffList() {
return suitStaffList;
}
public void setSuitStaffList(List<WelcomeSuitStaffBO> suitStaffList) {
this.suitStaffList = suitStaffList;
}
@Override
public String toString() {
return "WelcomeListBO{" +
"welcomeId='" + welcomeId + '\'' +
", wxEnterpriseId='" + wxEnterpriseId + '\'' +
", title='" + title + '\'' +
", welcomeContent='" + welcomeContent + '\'' +
", openFlag=" + openFlag +
", updateTime=" + updateTime +
", operatorId='" + operatorId + '\'' +
", operatorName='" + operatorName + '\'' +
", welcomeMediaList=" + welcomeMediaList +
'}';
}
}
package com.gic.haoban.manage.service.pojo.bo.welcome;
/**
* desc:欢迎语媒体bo
*
* @author: YongEn
* @date: 2022/2/9
**/
public class WelcomeMediaBO {
/**
* 欢迎语媒体id
*/
private Long welcomeMediaId;
/**
* 微信企业id
*/
private String wxEnterpriseId;
/**
* 欢迎语id
*/
private String welcomeId;
/**
* 媒体标题
*/
private String mediaTitle;
/**
* 媒体类型 1图片 2视频 3文件 4链接
*/
private Integer mediaType;
/**
* 媒体文件路径,保存上传路径
*/
private String mediaUrl;
public Long getWelcomeMediaId() {
return welcomeMediaId;
}
public void setWelcomeMediaId(Long welcomeMediaId) {
this.welcomeMediaId = welcomeMediaId;
}
public String getWxEnterpriseId() {
return wxEnterpriseId;
}
public void setWxEnterpriseId(String wxEnterpriseId) {
this.wxEnterpriseId = wxEnterpriseId;
}
public String getWelcomeId() {
return welcomeId;
}
public void setWelcomeId(String welcomeId) {
this.welcomeId = welcomeId;
}
public String getMediaTitle() {
return mediaTitle;
}
public void setMediaTitle(String mediaTitle) {
this.mediaTitle = mediaTitle;
}
public Integer getMediaType() {
return mediaType;
}
public void setMediaType(Integer mediaType) {
this.mediaType = mediaType;
}
public String getMediaUrl() {
return mediaUrl;
}
public void setMediaUrl(String mediaUrl) {
this.mediaUrl = mediaUrl;
}
@Override
public String toString() {
return "WelcomeMediaBO{" +
"welcomeMediaId=" + welcomeMediaId +
", wxEnterpriseId='" + wxEnterpriseId + '\'' +
", welcomeId='" + welcomeId + '\'' +
", mediaType=" + mediaType +
", mediaUrl='" + mediaUrl + '\'' +
'}';
}
}
package com.gic.haoban.manage.service.pojo.bo.welcome;
/**
* desc:欢迎语适用部门bo
*
* @author: YongEn
* @date: 2022/2/10
**/
public class WelcomeSuitDepartmentBO {
/**
* 部门id
*/
private String departmentId;
/**
* 部门名称
*/
private String departmentName;
/**
* 选中类型(部门)1被选中 2关联选中
*/
private Integer selectType;
public String getDepartmentId() {
return departmentId;
}
public void setDepartmentId(String departmentId) {
this.departmentId = departmentId;
}
public String getDepartmentName() {
return departmentName;
}
public void setDepartmentName(String departmentName) {
this.departmentName = departmentName;
}
public Integer getSelectType() {
return selectType;
}
public void setSelectType(Integer selectType) {
this.selectType = selectType;
}
@Override
public String toString() {
return "WelcomeSuitDepartmentBO{" +
"departmentId='" + departmentId + '\'' +
", departmentName='" + departmentName + '\'' +
'}';
}
}
package com.gic.haoban.manage.service.pojo.bo.welcome;
/**
* desc:欢迎语适用员工bo
*
* @author: YongEn
* @date: 2022/2/10
**/
public class WelcomeSuitStaffBO {
/**
* 员工id
*/
private String staffId;
/**
* 员工名称
*/
private String staffName;
/**
* 员工所属部门id
*/
private String belongDepartmentId;
/**
* 员工所属部门名称
*/
private String belongDepartmentName;
public String getStaffId() {
return staffId;
}
public void setStaffId(String staffId) {
this.staffId = staffId;
}
public String getStaffName() {
return staffName;
}
public void setStaffName(String staffName) {
this.staffName = staffName;
}
public String getBelongDepartmentId() {
return belongDepartmentId;
}
public void setBelongDepartmentId(String belongDepartmentId) {
this.belongDepartmentId = belongDepartmentId;
}
public String getBelongDepartmentName() {
return belongDepartmentName;
}
public void setBelongDepartmentName(String belongDepartmentName) {
this.belongDepartmentName = belongDepartmentName;
}
@Override
public String toString() {
return "WelcomeSuitStaffBO{" +
"staffId='" + staffId + '\'' +
", staffName='" + staffName + '\'' +
", belongDepartmentId='" + belongDepartmentId + '\'' +
", belongDepartmentName='" + belongDepartmentName + '\'' +
'}';
}
}
......@@ -66,5 +66,4 @@ public interface ExternalClerkRelatedService {
* @return
*/
String checkAndUpdateMemberByUnonId(String enterpriseId, String memberId, String unionId);
}
package com.gic.haoban.manage.service.service;
import com.gic.haoban.manage.service.pojo.bo.welcome.*;
import java.util.List;
/**
* desc:欢迎语接口服务
*
* @author: YongEn
* @date: 2022/2/8
**/
public interface WelcomeService {
/**
* desc: 保存欢迎语
*
* @param bo bo
* @return : {@link Boolean}
* @author : YongEn
* @date : 2022/2/8
*/
Boolean saveWelcome(SaveWelcomeBO bo);
/**
* desc: 删除欢迎语配置
*
* @param welcomeId 欢迎语id
* @return : {@link Boolean}
* @author : YongEn
* @date : 2022/2/8
*/
Boolean removeWelcome(String welcomeId);
/**
* desc: 获取欢迎语列表
*
* @param wxEnterpriseId 微信企业id
* @param title 标题
* @return : {@link List< WelcomeListBO >}
* @author : YongEn
* @date : 2022/2/8
*/
List<WelcomeListBO> listWelcome(String wxEnterpriseId, String title);
/**
* desc: 获取欢迎语详情
*
* @param welcomeId 欢迎语id
* @return : {@link WelcomeDetailBO}
* @author : YongEn
* @date : 2022/2/8
*/
WelcomeDetailBO getWelcome(String welcomeId);
/**
* desc: 保存加好友配置
*
* @param bo bo
* @return : {@link Boolean}
* @author : YongEn
* @date : 2022/2/8
*/
Boolean saveFriendSetting(SaveFriendSettingBO bo);
/**
* desc: 获取加好友配置
*
* @param wxEnterpriseId 微信企业id
* @return : {@link FriendSettingDetailBO}
* @author : YongEn
* @date : 2022/2/8
*/
FriendSettingDetailBO getFriendSetting(String wxEnterpriseId);
/**
* desc: 根据员工所在部门匹配欢迎语
*
* @param staffId 员工id
* @param wxEnterpriseId 微信企业id
* @return : {@link WelcomeDetailBO}
* @author : YongEn
* @date : 2022/2/9
*/
WelcomeDetailBO getMatchWelcome(String staffId, String wxEnterpriseId);
}
package com.gic.haoban.manage.service.service;
import com.gic.haoban.manage.service.pojo.bo.welcome.WelcomeSuitDepartmentBO;
import com.gic.haoban.manage.service.pojo.bo.welcome.WelcomeSuitStaffBO;
import java.util.List;
/**
* desc:欢迎语适用范围服务接口
*
* @author: YongEn
* @date: 2022/2/10
**/
public interface WelcomeSuitRangService {
/**
* desc: 新增适用部门
*
* @param welcomeId 欢迎语id
* @param suitDepartmentList 适用门店列表
* @param wxEnterpriseId 微信企业id
* @author : YongEn
* @date : 2022/2/10
*/
void addSuitDepartment(String welcomeId, String wxEnterpriseId, List<WelcomeSuitDepartmentBO> suitDepartmentList);
/**
* desc: 新增适用员工
*
* @param welcomeId 欢迎语id
* @param suitStaffList 适用员工列表
* @param wxEnterpriseId 微信企业id
* @author : YongEn
* @date : 2022/2/10
*/
void addSuitStaff(String welcomeId, String wxEnterpriseId, List<WelcomeSuitStaffBO> suitStaffList);
/**
* desc: 删除适用部门
*
* @param welcomeId 欢迎语id
* @param suitDepartmentList 适用门店列表
* @param wxEnterpriseId 微信企业id
* @author : YongEn
* @date : 2022/2/10
*/
void deleteSuitDepartment(String welcomeId, String wxEnterpriseId, List<WelcomeSuitDepartmentBO> suitDepartmentList);
/**
* desc: 删除适用员工
*
* @param welcomeId 欢迎语id
* @param suitStaffList 适用员工列表
* @param wxEnterpriseId 微信企业id
* @author : YongEn
* @date : 2022/2/10
*/
void deleteSuitStaff(String welcomeId, String wxEnterpriseId, List<WelcomeSuitStaffBO> suitStaffList);
}
package com.gic.haoban.manage.service.service.impl;
import com.gic.commons.util.UniqueIdUtils;
import com.gic.haoban.manage.api.enums.WelcomeSuitTypeEnum;
import com.gic.haoban.manage.service.dao.mapper.TabHaobanWelcomeSuitRangMapper;
import com.gic.haoban.manage.service.entity.TabHaobanWelcomeSuitRang;
import com.gic.haoban.manage.service.pojo.bo.welcome.WelcomeSuitDepartmentBO;
import com.gic.haoban.manage.service.pojo.bo.welcome.WelcomeSuitStaffBO;
import com.gic.haoban.manage.service.service.WelcomeSuitRangService;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.List;
import java.util.Set;
import java.util.stream.Collectors;
/**
* desc:欢迎语适用范围服务接口实现
*
* @author: YongEn
* @date: 2022/2/10
**/
@Service
public class WelcomeSuitRangServiceImpl implements WelcomeSuitRangService {
@Autowired
private TabHaobanWelcomeSuitRangMapper welcomeSuitRangMapper;
@Override
public void addSuitDepartment(String welcomeId, String wxEnterpriseId, List<WelcomeSuitDepartmentBO> suitDepartmentList) {
if (CollectionUtils.isEmpty(suitDepartmentList)) {
return;
}
// 构建实体类
List<TabHaobanWelcomeSuitRang> welcomeSuitRangList = suitDepartmentList.stream().map(one -> {
TabHaobanWelcomeSuitRang welcomeSuitRang = new TabHaobanWelcomeSuitRang();
welcomeSuitRang.setWelcomeSuitRangId(UniqueIdUtils.uniqueLong());
welcomeSuitRang.setWxEnterpriseId(wxEnterpriseId);
welcomeSuitRang.setWelcomeId(welcomeId);
welcomeSuitRang.setSuitType(WelcomeSuitTypeEnum.DEPARTMENT.getCode());
welcomeSuitRang.setSuitDepartmentId(one.getDepartmentId());
welcomeSuitRang.setSuitDepartmentName(one.getDepartmentName());
welcomeSuitRang.setSuitStaffId("-1");
welcomeSuitRang.setSuitStaffName("-1");
welcomeSuitRang.setStaffBelongDepartmentId("-1");
welcomeSuitRang.setStaffBelongDepartmentName("-1");
welcomeSuitRang.setSelectType(one.getSelectType());
welcomeSuitRang.setCreateTime(new Date());
welcomeSuitRang.setUpdateTime(new Date());
welcomeSuitRang.setDeleteFlag(0);
return welcomeSuitRang;
}).collect(Collectors.toList());
welcomeSuitRangMapper.batchInsert(welcomeSuitRangList);
}
@Override
public void addSuitStaff(String welcomeId, String wxEnterpriseId, List<WelcomeSuitStaffBO> suitStaffList) {
if (CollectionUtils.isEmpty(suitStaffList)) {
return;
}
// 构建实体类
List<TabHaobanWelcomeSuitRang> welcomeSuitRangList = suitStaffList.stream().map(one -> {
TabHaobanWelcomeSuitRang welcomeSuitRang = new TabHaobanWelcomeSuitRang();
welcomeSuitRang.setWelcomeSuitRangId(UniqueIdUtils.uniqueLong());
welcomeSuitRang.setWxEnterpriseId(wxEnterpriseId);
welcomeSuitRang.setWelcomeId(welcomeId);
welcomeSuitRang.setSuitType(WelcomeSuitTypeEnum.STAFF.getCode());
welcomeSuitRang.setSuitDepartmentId("-1");
welcomeSuitRang.setSuitDepartmentName("-1");
welcomeSuitRang.setSuitStaffId(one.getStaffId());
welcomeSuitRang.setSuitStaffName(one.getStaffName());
welcomeSuitRang.setStaffBelongDepartmentId(one.getBelongDepartmentId());
welcomeSuitRang.setStaffBelongDepartmentName(one.getBelongDepartmentName());
welcomeSuitRang.setSelectType(1);
welcomeSuitRang.setCreateTime(new Date());
welcomeSuitRang.setUpdateTime(new Date());
welcomeSuitRang.setDeleteFlag(0);
return welcomeSuitRang;
}).collect(Collectors.toList());
welcomeSuitRangMapper.batchInsert(welcomeSuitRangList);
}
@Override
public void deleteSuitDepartment(String welcomeId, String wxEnterpriseId, List<WelcomeSuitDepartmentBO> suitDepartmentList) {
if (CollectionUtils.isEmpty(suitDepartmentList)) {
return;
}
Set<String> welcomeSuitDepartmentIdSet = suitDepartmentList.stream()
.map(WelcomeSuitDepartmentBO::getDepartmentId).collect(Collectors.toSet());
welcomeSuitRangMapper.batchDeleteBySuitDepartmentIdSet(welcomeId, wxEnterpriseId, welcomeSuitDepartmentIdSet);
}
@Override
public void deleteSuitStaff(String welcomeId, String wxEnterpriseId, List<WelcomeSuitStaffBO> suitStaffList) {
if (CollectionUtils.isEmpty(suitStaffList)) {
return;
}
Set<String> welcomeSuitDepartmentIdSet = suitStaffList.stream()
.map(WelcomeSuitStaffBO::getStaffId).collect(Collectors.toSet());
welcomeSuitRangMapper.batchDeleteBySuitStaffIdSet(welcomeId, wxEnterpriseId, welcomeSuitDepartmentIdSet);
}
}
......@@ -162,6 +162,29 @@ public class ExternalClerkRelatedApiServiceImpl implements ExternalClerkRelatedA
resp.setMessage("relationKey对应的企业与所传会员企业不对应");
return resp;
}
updateExternalClerkRelated(enterpriseId, memberId, unionid, externalClerkRelated);
resp.setResult(EntityUtil.changeEntityNew(ExternalClerkRelatedDTO.class, externalClerkRelated));
return resp;
}
@Override
public void bindMemberIdExternalById(String externalClerkRelatedId, String enterpriseId, String memberId, String unionid) {
TabHaobanExternalClerkRelated externalClerkRelated = tabHaobanExternalClerkRelatedMapper.selectByPrimaryKey(externalClerkRelatedId);
if (externalClerkRelated == null) {
log.error("查询好办与gic数据为空,externalClerkRelatedId:{},enterpriseId:{},memberId:{},unionid:{}",externalClerkRelatedId,enterpriseId,memberId,unionid);
return;
}
updateExternalClerkRelated(enterpriseId, memberId, unionid, externalClerkRelated);
}
/**
* 更新好友关系
* @param enterpriseId
* @param memberId
* @param unionid
* @param externalClerkRelated
*/
private void updateExternalClerkRelated(String enterpriseId, String memberId, String unionid, TabHaobanExternalClerkRelated externalClerkRelated) {
externalClerkRelated.setMemberId(memberId);
externalClerkRelated.setUnionid(unionid);
externalClerkRelated.setUpdateTime(new Date());
......@@ -175,10 +198,8 @@ public class ExternalClerkRelatedApiServiceImpl implements ExternalClerkRelatedA
memberUnionidRelated.setEnterpriseId(enterpriseId);
memberUnionidRelated.setUpdateTime(new Date());
memberUnionidRelatedMapper.updateByPrimaryKeySelective(memberUnionidRelated);
resp.setResult(EntityUtil.changeEntityNew(ExternalClerkRelatedDTO.class, externalClerkRelated));
//同步标签
pushTagSync(memberId, externalClerkRelated.getWxEnterpriseId(), enterpriseId);
return resp;
}
/**
......@@ -201,8 +222,7 @@ public class ExternalClerkRelatedApiServiceImpl implements ExternalClerkRelatedA
try {
clientInstance.sendMessage("qywxTagSyncDeal", JSONObject.toJSONString(pojo));
} catch (Exception e) {
e.printStackTrace();
log.info("异常:{}", e);
log.info("异常:{}", e.getMessage(),e);
}
}
......
......@@ -2,28 +2,22 @@ package com.gic.haoban.manage.service.service.out.impl;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.gic.clerk.api.dto.ClerkQwDTO;
import com.gic.clerk.api.service.ClerkService;
import com.gic.commons.util.EntityUtil;
import com.gic.commons.util.GICMQClientUtil;
import com.gic.commons.util.GlobalInfo;
import com.gic.commons.util.GlobalVar;
import com.gic.haoban.app.customer.service.api.service.InnerApiService;
import com.gic.haoban.base.api.common.Constant;
import com.gic.haoban.base.api.common.ServiceResponse;
import com.gic.haoban.manage.api.dto.*;
import com.gic.haoban.manage.api.enums.AppPageType;
import com.gic.haoban.manage.api.enums.GicDataType;
import com.gic.haoban.manage.api.enums.NoticeMessageTypeEnum;
import com.gic.haoban.manage.api.enums.WxEditType;
import com.gic.haoban.manage.api.enums.*;
import com.gic.haoban.manage.api.service.*;
import com.gic.haoban.manage.api.util.notify.NoticeMessageUtil;
import com.gic.haoban.manage.service.config.Config;
import com.gic.haoban.manage.service.entity.TabHaobanDepartment;
import com.gic.haoban.manage.service.entity.TabHaobanStaff;
import com.gic.haoban.manage.service.entity.TabHaobanStaffDepartmentRelated;
import com.gic.haoban.manage.service.entity.TabHaobanWxEnterprise;
import com.gic.haoban.manage.service.service.DepartmentService;
import com.gic.haoban.manage.service.service.StaffDepartmentRelatedService;
import com.gic.haoban.manage.service.service.StaffService;
import com.gic.haoban.manage.service.service.WxEnterpriseService;
import com.gic.haoban.manage.service.entity.*;
import com.gic.haoban.manage.service.service.*;
import com.gic.mq.sdk.GicMQClient;
import com.gic.thirdparty.api.dto.PicUploadResDTO;
import com.gic.thirdparty.api.service.QQCloudPicService;
......@@ -31,6 +25,8 @@ import com.gic.wechat.api.dto.qywx.ItemDTO;
import com.gic.wechat.api.dto.qywx.QywxXcxSendMessageDTO;
import com.gic.wechat.api.service.qywx.QywxDepartmentApiService;
import com.gic.wechat.api.service.qywx.QywxSuiteApiService;
import com.google.common.collect.Sets;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.io.IOUtils;
import org.apache.commons.lang.StringUtils;
import org.apache.logging.log4j.LogManager;
......@@ -40,10 +36,9 @@ import org.springframework.stereotype.Service;
import java.io.InputStream;
import java.net.URL;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.*;
import java.util.function.Function;
import java.util.stream.Collectors;
/**
* 接收企业微信或者gic推送消息进行处理
......@@ -88,6 +83,14 @@ public class MessageApiServiceImpl implements MessageApiService {
@Autowired
private StaffDepartmentRelatedApiService staffDepartmentRelatedApiService;
@Autowired
private WxEnterpriseRelatedService wxEnterpriseRelatedService;
@Autowired
private ClerkService clerkService;
@Autowired
private SecretSettingService secretSettingService;
@Override
public void gicMessageReceive(GicMessageDTO gicMessageDTO) {
if (true) {
......@@ -118,23 +121,107 @@ public class MessageApiServiceImpl implements MessageApiService {
@Override
public void dealWxMessage(String param) {
if (true) {
log.info("不出发更新企业微信变更");
return;
}
QywxCallBackDTO dto = JSON.parseObject(param, QywxCallBackDTO.class);
log.info("【处理微信回调】dto={}", JSON.toJSONString(param));
if (dto != null) {
String corpId = dto.getAuthCorpId();
TabHaobanWxEnterprise enterprise = this.enterpriseService.getEnterpriseBycorpId(corpId);
if (enterprise != null) {
if (dto.getChangeType().endsWith("party")) {
this.dealDepartment(dto);
} else {
this.dealUser(dto);
}
}
// 处理定制-目前鸿星尔克用
boolean checkErkeDeal = checkErkeDeal(dto);
if (!checkErkeDeal) {
log.info("不符合鸿星尔克需求,返回");
return;
}
TabHaobanWxEnterprise enterprise = enterpriseService.getEnterpriseBycorpId(dto.getAuthCorpId());
if (Objects.isNull(enterprise)) {
log.info("通过corpId:【{}】未查询到授权企业,无法处理", dto.getAuthCorpId());
return;
}
// 校验适用企业
boolean suitWxEnterpriseIid = checkSuitEnterpriseId(enterprise.getWxEnterpriseId());
if (!suitWxEnterpriseIid) {
log.info("微信企业id:{}, 不适用", enterprise.getWxEnterpriseId());
return;
}
List<TabHaobanWxEnterpriseRelated> relatedList = wxEnterpriseRelatedService.getByWxEnterpriseId(enterprise.getWxEnterpriseId());
if (CollectionUtils.isEmpty(relatedList)) {
log.info("未查询到企业关联企业 wxEnt");
return;
}
ServiceResponse response = staffApiService.getWxSaveNew(dto.getUserid(), enterprise.getWxEnterpriseId());
if (response.getCode() != 1) {
log.info("添加企业员工失败:{}", response.getMessage());
return;
}
SecretSettingDTO secretSetting = secretSettingService.getSecretSetting(enterprise.getWxEnterpriseId(), SecretTypeEnum.HAOBAN_HELP.getVal());
if (null == secretSetting || secretSetting.getCheckFlag() == 0) {
log.info("没有配置secret:{}", JSONObject.toJSONString(enterprise));
return;
}
// 取第一个企业的id
doDealUser(dto, relatedList.get(0).getEnterpriseId(), secretSetting.getSecretVal());
// 以下暂时不会用到
// if (dto != null) {
// String corpId = dto.getAuthCorpId();
// TabHaobanWxEnterprise enterprise = this.enterpriseService.getEnterpriseBycorpId(corpId);
// if (enterprise != null) {
// if (dto.getChangeType().endsWith("party")) {
// this.dealDepartment(dto);
// } else {
// this.dealUser(dto);
// }
// }
// }
}
/**
* desc: 鸿星尔克定制需求校验-后期可扩展为配置形式
*
* @param dto dto
* @return : {@link boolean}
* @author : YongEn
* @date : 2022/1/25
*/
private boolean checkErkeDeal(QywxCallBackDTO dto) {
if (Objects.isNull(dto) || StringUtils.isEmpty(dto.getUserid())) {
return false;
}
if (!"create_user".equals(dto.getChangeType())) {
log.info("只处理新增用户, 非 create_user 类型不做处理 当前传入类型:{}", dto.getChangeType());
return false;
}
String userid = dto.getUserid();
// 当前规则 userId是12位并且以5开头
if (userid.length() != 12) {
return false;
}
return userid.startsWith("5");
}
private boolean checkSuitEnterpriseId(String wxEnterpriseId) {
Set<String> wxSet = Sets.newHashSet("ca66a01b79474c40b3e7c7f93daf1a3b");
return wxSet.contains(wxEnterpriseId);
}
private void doDealUser(QywxCallBackDTO dto, String enterpriseId, String secret) {
ClerkQwDTO clerkQwDTO = new ClerkQwDTO();
clerkQwDTO.setEnterpriseId(enterpriseId);
String mainDeptId = dto.getMainDepartment();
List<com.gic.wechat.api.dto.qywx.DepartmentDTO> departments = qywxDepartmentApiService.listSelfDepartment(dto.getAuthCorpId(), secret, Integer.valueOf(mainDeptId));
if (CollectionUtils.isEmpty(departments)) {
log.info("通过主部门查询部门列表为空 mainDeptId:{}", mainDeptId);
return;
}
Map<Integer, com.gic.wechat.api.dto.qywx.DepartmentDTO> departmentIdMap = departments.stream()
.collect(Collectors.toMap(com.gic.wechat.api.dto.qywx.DepartmentDTO::getId, Function.identity(), (a, b) -> a));
com.gic.wechat.api.dto.qywx.DepartmentDTO mainDept = departmentIdMap.get(Integer.valueOf(mainDeptId));
clerkQwDTO.setStoreName(mainDept.getName());
clerkQwDTO.setClerkCode(dto.getUserid());
clerkQwDTO.setClerkName(dto.getUserName());
clerkQwDTO.setClerkType(dto.getIsLeaderInDept()[0]);
clerkQwDTO.setClerkGener(dto.getGender());
clerkQwDTO.setPhoneNumber(dto.getMobile());
clerkQwDTO.setNationcode(dto.getTelephone());
// 调用换导购接口逻辑
clerkService.syncClerkForQw(clerkQwDTO);
}
private void dealDepartment(QywxCallBackDTO qywxCallBackDTO) {
......
......@@ -1522,7 +1522,7 @@ public class StaffApiServiceImpl implements StaffApiService {
return staffQrCodeDTO;
}
String qr_code = user.getQr_code();
staffMapper.updateQrCodeByStaffId(staffId,qr_code);
staffMapper.updateQrCodeByStaffId(staffId, qr_code);
staffQrCodeDTO.setQrCode(qr_code);
return staffQrCodeDTO;
}
......
......@@ -2,6 +2,7 @@ package com.gic.haoban.manage.service.service.out.impl;
import java.util.List;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.haoban.manage.api.dto.SecretSettingDTO;
import com.gic.haoban.manage.api.dto.WxEnterpriseDTO;
import com.gic.haoban.manage.api.enums.SecretTypeEnum;
......@@ -96,4 +97,10 @@ public class TestServiceImpl implements TestApiService {
quartzService.addOrUpdateQuartzTask(taskDTO);
}
@Override
public ServiceResponse listAllQywxUser(String params) {
logger.info("JSONOnkec:"+params);
return ServiceResponse.success(params);
}
}
package com.gic.haoban.manage.service.service.out.impl;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.commons.util.EntityUtil;
import com.gic.haoban.manage.api.dto.welcome.dto.*;
import com.gic.haoban.manage.api.dto.welcome.qdto.SaveFriendSettingQDTO;
import com.gic.haoban.manage.api.dto.welcome.qdto.SaveWelcomeQDTO;
import com.gic.haoban.manage.api.service.out.WelcomeApiService;
import com.gic.haoban.manage.service.pojo.bo.welcome.*;
import com.gic.haoban.manage.service.service.WelcomeService;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Collections;
import java.util.List;
import java.util.stream.Collectors;
/**
* desc:欢迎语对外服务接口实现
*
* @author: YongEn
* @date: 2022/2/11
**/
@Service
public class WelcomeApiServiceImpl implements WelcomeApiService {
@Autowired
private WelcomeService welcomeService;
@Override
public ServiceResponse<Boolean> saveWelcome(SaveWelcomeQDTO qdto) {
SaveWelcomeBO saveWelcomeBO = new SaveWelcomeBO();
saveWelcomeBO.setWelcomeId(qdto.getWelcomeId());
saveWelcomeBO.setWxEnterpriseId(qdto.getWxEnterpriseId());
saveWelcomeBO.setTitle(qdto.getTitle());
saveWelcomeBO.setWelcomeContent(qdto.getWelcomeContent());
saveWelcomeBO.setOperatorId(qdto.getOperatorId());
saveWelcomeBO.setOperatorName(qdto.getOperatorName());
// 媒体列表
saveWelcomeBO.setMediaList(EntityUtil.changeEntityListNew(SaveWelcomeMediaBO.class, qdto.getMediaList()));
// 适用部门新增列表
saveWelcomeBO.setSuitDepartmentAddList(EntityUtil.changeEntityListNew(WelcomeSuitDepartmentBO.class, qdto.getSuitDepartmentAddList()));
// 使用部门删除列表
saveWelcomeBO.setSuitDepartmentDeleteList(EntityUtil.changeEntityListNew(WelcomeSuitDepartmentBO.class, qdto.getSuitDepartmentDeleteList()));
Boolean saveWelcome = welcomeService.saveWelcome(saveWelcomeBO);
return ServiceResponse.success(saveWelcome);
}
@Override
public ServiceResponse<Boolean> removeWelcome(String welcomeId) {
return ServiceResponse.success(
welcomeService.removeWelcome(welcomeId)
);
}
@Override
public ServiceResponse<List<WelcomeListDTO>> listWelcome(String wxEnterpriseId, String title) {
List<WelcomeListBO> welcomeList = welcomeService.listWelcome(wxEnterpriseId, title);
// 数据转换
List<WelcomeListDTO> welcomeResponseList = welcomeList.stream().map(one -> {
WelcomeListDTO dto = new WelcomeListDTO();
dto.setWelcomeId(one.getWelcomeId());
dto.setWxEnterpriseId(one.getWxEnterpriseId());
dto.setTitle(one.getTitle());
dto.setWelcomeContent(one.getWelcomeContent());
dto.setOpenFlag(one.getOpenFlag());
dto.setUpdateTime(one.getUpdateTime());
dto.setOperatorId(one.getOperatorId());
dto.setOperatorName(one.getOperatorName());
// 媒体列表
dto.setWelcomeMediaList(
CollectionUtils.isEmpty(one.getWelcomeMediaList()) ? Collections.emptyList()
: EntityUtil.changeEntityListNew(WelcomeMediaDTO.class, one.getWelcomeMediaList())
);
// 适用部门列表
dto.setSuitDepartmentList(
CollectionUtils.isEmpty(one.getSuitDepartmentList()) ? Collections.emptyList()
: EntityUtil.changeEntityListNew(WelcomeSuitDepartmentDTO.class, one.getSuitDepartmentList())
);
// 员工暂时不做
return dto;
}).collect(Collectors.toList());
return ServiceResponse.success(welcomeResponseList);
}
@Override
public ServiceResponse<WelcomeDetailDTO> getWelcome(String welcomeId) {
WelcomeDetailBO welcome = welcomeService.getWelcome(welcomeId);
// 数据转换
WelcomeDetailDTO dto = new WelcomeDetailDTO();
dto.setWelcomeId(welcome.getWelcomeId());
dto.setWxEnterpriseId(welcome.getWxEnterpriseId());
dto.setTitle(welcome.getTitle());
dto.setWelcomeContent(welcome.getWelcomeContent());
dto.setOpenFlag(welcome.getOpenFlag());
// 媒体列表
dto.setWelcomeMediaList(
CollectionUtils.isEmpty(welcome.getWelcomeMediaList()) ? Collections.emptyList()
: EntityUtil.changeEntityListNew(WelcomeMediaDTO.class, welcome.getWelcomeMediaList())
);
// 适用部门列表
dto.setSuitDepartmentList(
CollectionUtils.isEmpty(welcome.getSuitDepartmentList()) ? Collections.emptyList()
: EntityUtil.changeEntityListNew(WelcomeSuitDepartmentDTO.class, welcome.getSuitDepartmentList())
);
// 员工暂时不做
return ServiceResponse.success(dto);
}
@Override
public ServiceResponse<Boolean> saveFriendSetting(SaveFriendSettingQDTO qdto) {
return ServiceResponse.success(
welcomeService.saveFriendSetting(EntityUtil.changeEntityNew(SaveFriendSettingBO.class, qdto))
);
}
@Override
public ServiceResponse<FriendSettingDetailDTO> getFriendSetting(String wxEnterpriseId) {
FriendSettingDetailBO friendSetting = welcomeService.getFriendSetting(wxEnterpriseId);
return ServiceResponse.success(
EntityUtil.changeEntityNew(FriendSettingDetailDTO.class, friendSetting)
);
}
}
......@@ -11,6 +11,7 @@ import com.gic.haoban.manage.api.dto.*;
import com.gic.haoban.manage.api.enums.SecretTypeEnum;
import com.gic.haoban.manage.api.service.StaffApiService;
import com.gic.haoban.manage.api.service.WxEnterpriseApiService;
import com.gic.haoban.manage.service.config.Config;
import com.gic.haoban.manage.service.dao.mapper.TabHaobanWelcomeMapper;
import com.gic.haoban.manage.service.dao.mapper.WxEnterpriseMapper;
import com.gic.haoban.manage.service.entity.TabHaobanWxApplication;
......@@ -21,6 +22,7 @@ import com.gic.haoban.manage.service.pojo.bo.StaffPrivacyUseLogBO;
import com.gic.haoban.manage.service.service.*;
import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
......@@ -28,9 +30,8 @@ import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.List;
import java.util.Set;
import java.util.*;
import java.util.stream.Collectors;
@Service
public class WxEnterpriseApiServiceImpl implements WxEnterpriseApiService {
......@@ -53,6 +54,8 @@ public class WxEnterpriseApiServiceImpl implements WxEnterpriseApiService {
private TabHaobanWelcomeMapper welcomeMapper;
@Autowired
private StaffPrivacyUseLogService staffPrivacyUseLogService;
@Autowired
private Config config;
@Override
public void callbackReviceEnterprise(QywxCorpInfoSimpleDTO dto) {
......@@ -120,10 +123,52 @@ public class WxEnterpriseApiServiceImpl implements WxEnterpriseApiService {
}
@Override
public com.gic.api.base.commons.Page<YwWxEnterpriseDTO> list(BasePageInfo pageInfo, String keyword, List<String> enterpriseIds, Integer gicContactFlag, String version, List<String> enterpriseIdsNotIn) {
public com.gic.api.base.commons.Page<YwWxEnterpriseDTO> list(BasePageInfo pageInfo, String keyword, List<String> enterpriseIds, Integer gicContactFlag,
String version, List<String> enterpriseIdsNotIn, String loginUserId) {
PageHelper.startPage(pageInfo.getPageNum(), pageInfo.getPageSize());
Page<TabHaobanWxEnterprise> page = wxEnterpriseMapper.list(keyword, enterpriseIds, gicContactFlag, version, enterpriseIdsNotIn);
return PageUtil.changePageHelperToCurrentPage(page, YwWxEnterpriseDTO.class);
// 数据转换+白名单过滤
if (Objects.isNull(page) || CollectionUtils.isEmpty(page.getResult())) {
return new com.gic.api.base.commons.Page<>();
}
com.gic.api.base.commons.Page<YwWxEnterpriseDTO> resPage = PageUtil.changePageHelperToCurrentPage(page, YwWxEnterpriseDTO.class);
boolean matchOperId = matchOperId(loginUserId);
resPage.getResult().forEach(one -> {
if (matchWxEnterpriseIdWhiteList(one.getWxEnterpriseId()) && matchOperId) {
one.setOpenMassFlag(Boolean.TRUE);
} else {
one.setOpenMassFlag(Boolean.FALSE);
}
});
return resPage;
}
private boolean matchWxEnterpriseIdWhiteList(String wxEnterpriseId) {
if (StringUtils.isEmpty(wxEnterpriseId)) {
return false;
}
// 匹配微信企业id白名单
String whiteList = config.getHistoryMbrMassEnterpriseWhiteList();
if (StringUtils.isEmpty(whiteList)) {
return false;
}
String[] idArr = whiteList.split(",");
Set<String> idSet = new HashSet<>(Arrays.asList(idArr));
return idSet.contains(wxEnterpriseId);
}
private boolean matchOperId(String loginUserId) {
if (StringUtils.isEmpty(loginUserId)) {
return false;
}
// 匹配运营id白名单
String whiteList = config.getHistoryMbrMassOperWhiteList();
if (StringUtils.isEmpty(whiteList)) {
return false;
}
String[] idArr = whiteList.split(",");
Set<String> idSet = new HashSet<>(Arrays.asList(idArr));
return idSet.contains(loginUserId);
}
@Override
......
......@@ -125,9 +125,10 @@ public class QywxClerkSyncOperation implements BaseSyncOperation {
dealSyncOperationApiService.cleanDiffrence(wxEnterpriseId, taskId);
WxEnterpriseDTO wxEnterpriseDTO = wxEnterpriseApiService.getOne(wxEnterpriseId);
String corpid = wxEnterpriseDTO.getCorpid();
Integer externalFlag = wxEnterpriseDTO.getExternalFlag();
TabHaobanWxApplication tabHaobanWxApplication = wxApplicationMapper.selectByCorpId(corpid, null);
logger.info("同步通讯录完成,批量处理wx_user_id,corpid:{}", corpid);
if (corpid.length() > 20) {
if (corpid.length() > 20 || externalFlag == 1) {
//批量处理wx_user_id to wx_open_user_id
List<StaffDTO> staffDTOS = staffApiService.listUserIdByWxEnterpriseId(wxEnterpriseId);
logger.info("useridToOpenuserid请求:corpid:{}", corpid);
......
......@@ -96,6 +96,9 @@
<dubbo:service interface="com.gic.haoban.manage.api.service.out.ErrorLogApiService"
ref="errorLogApiServiceImpl" timeout="10000"/>
<dubbo:service interface="com.gic.haoban.manage.api.service.out.WelcomeApiService"
ref="welcomeApiServiceImpl" timeout="10000"/>
<dubbo:reference interface="com.gic.enterprise.api.service.DepartmentService" id="gicDepartmentService"/>
<dubbo:reference interface="com.gic.wechat.api.service.qywx.QywxDepartmentApiService"
id="qywxDepartmentApiService"/>
......@@ -143,4 +146,8 @@
<dubbo:reference interface="com.gic.clerk.api.service.PowerService" id="powerService"/>
<dubbo:reference interface="com.gic.enterprise.api.service.AuthorizeService" id="authorizeService"/>
<dubbo:reference id="quartzService" interface="com.gic.quartz.api.service.QuartzService" timeout="10000"/>
<dubbo:reference id="memberApiService" interface="com.gic.member.api.service.MemberApiService" timeout="10000"/>
<dubbo:reference id="weixinBaseFunService" interface="com.gic.wechat.api.service.fwh.WeixinBaseFunService" timeout="10000"/>
<dubbo:reference id="memberStoreService" interface="com.gic.member.api.service.MemberStoreService" timeout="10000"/>
</beans>
\ No newline at end of file
dubbo.registry.file=haoban-mobile-app-service
\ No newline at end of file
dubbo.registry.file=haoban-manage3-service
\ No newline at end of file
......@@ -337,4 +337,13 @@
#{item}
</foreach>
</update>
<select id="listByWxEnterpriseIdAndStaffId"
resultType="com.gic.haoban.manage.service.entity.TabHaobanStaffDepartmentRelated">
select
<include refid="Base_Column_List" />
from tab_haoban_staff_department_related
where status_flag = 1
and wx_enterprise_id = #{wxEnterpriseId} and staff_id = #{staffId}
</select>
</mapper>
\ No newline at end of file
......@@ -26,7 +26,8 @@
</resultMap>
<sql id="Base_Column_List">
staff_id, wx_user_id, phone_number, staff_name, nation_code, nick_name, sex, postion,
staff_id
, wx_user_id, phone_number, staff_name, nation_code, nick_name, sex, postion,
active_flag, extend_postion, status_flag, create_time, update_time,wx_enterprise_id,head_img,
sort,sync_postion_flag,super_manager_flag,wx_open_user_id,wx_open_id,qr_code
</sql>
......@@ -447,15 +448,15 @@
<update id="updateOpenIdByStaffId" parameterType="com.gic.haoban.manage.service.entity.TabHaobanStaff">
update tab_haoban_staff
set wx_open_id = #{openId},
update_time = now()
set wx_open_id = #{openId},
update_time = now()
where staff_id = #{staffId}
</update>
<update id="updateQrCodeByStaffId" parameterType="com.gic.haoban.manage.service.entity.TabHaobanStaff">
update tab_haoban_staff
set qr_code = #{qrCode},
update_time = now()
set qr_code = #{qrCode},
update_time = now()
where staff_id = #{staffId}
</update>
......@@ -468,4 +469,22 @@
and status_flag = 1 limit 1
</select>
<update id="delStaffByWxUserId">
update tab_haoban_staff
set status_flag = 0,update_time = now()
where wx_enterprise_id = #{wxEnterpriseId}
and wx_user_id = #{wxUserId}
and status_flag = 1
and staff_id != #{staffId}
</update>
<update id="delStaffByPhoneNumber">
update tab_haoban_staff
set status_flag = 0,update_time = now()
where wx_enterprise_id = #{wxEnterpriseId}
and phone_number = #{phoneNumber}
and status_flag = 1
and staff_id != #{staffId}
</update>
</mapper>
\ No newline at end of file
......@@ -21,17 +21,20 @@
<result column="create_time" property="createTime" jdbcType="TIMESTAMP"/>
<result column="update_time" property="updateTime" jdbcType="TIMESTAMP"/>
</resultMap>
<sql id="Base_Column_List">
external_clerk_related_id, wx_enterprise_id, enterprise_id, store_id, member_id,
unionid, head_url,external_name, add_create_time, member_unionid_related_id, clerk_id, staff_id,
wx_user_id,relation_key, status_flag, create_time, update_time,external_user_id
</sql>
<select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.String">
select
<include refid="Base_Column_List"/>
from tab_haoban_external_clerk_related
where external_clerk_related_id = #{externalClerkRelatedId,jdbcType=VARCHAR}
</select>
<delete id="deleteByPrimaryKey" parameterType="java.lang.String">
delete
from tab_haoban_external_clerk_related
......@@ -320,6 +323,20 @@
and status_flag = 1
</select>
<select id="listByExTernalUseridAndWxEnterpriseId" resultMap="BaseResultMap" parameterType="java.lang.String">
select
<include refid="Base_Column_List"/>
from tab_haoban_external_clerk_related
where external_user_id = #{externalUserid} and wx_enterprise_id = #{wxEnterpriseId}
<if test="statusFlags != null">
and status_flag IN
<foreach collection="statusFlags" item="id" index="index" open="(" close=")" separator=",">
#{id,jdbcType=VARCHAR}
</foreach>
</if>
</select>
<select id="listByExTernalUseridAndWxUserIdAllStatus" resultMap="BaseResultMap" parameterType="java.lang.String">
select
<include refid="Base_Column_List"/>
......@@ -603,4 +620,18 @@
and clerk_id = #{clerkId}
AND status_flag = 1
</select>
<select id="getByEnterpriseIdAndExternalUserId" resultMap="BaseResultMap">
select
<include refid="Base_Column_List"/>
from tab_haoban_external_clerk_related
where wx_user_id = #{wxUserId,jdbcType=VARCHAR}
and wx_enterprise_id = #{wxEnterpriseId}
and enterprise_id = #{enterpriseId}
and external_user_id = #{externalUserId}
and status_flag = 4
order by update_time desc limit 1
</select>
</mapper>
\ No newline at end of file
<?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.gic.haoban.manage.service.dao.mapper.TabHaobanFriendSettingMapper">
<resultMap type="com.gic.haoban.manage.service.entity.TabHaobanFriendSetting" id="TabHaobanFriendSettingMap">
<result property="friendSettingId" column="friend_setting_id" jdbcType="BIGINT"/>
<result property="wxEnterpriseId" column="wx_enterprise_id" jdbcType="VARCHAR"/>
<result property="friendSettingType" column="friend_setting_type" jdbcType="INTEGER"/>
<result property="updateId" column="update_id" jdbcType="VARCHAR"/>
<result property="updateName" column="update_name" jdbcType="VARCHAR"/>
<result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
<result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
<result property="deleteFlag" column="delete_flag" jdbcType="INTEGER"/>
</resultMap>
<sql id="Base_Column_List">
friend_setting_id
, wx_enterprise_id, friend_setting_type, update_id, update_name, create_time, update_time, delete_flag </sql>
<!--新增所有列-->
<insert id="insert" keyProperty="friendSettingId" useGeneratedKeys="true"
parameterType="com.gic.haoban.manage.service.entity.TabHaobanFriendSetting">
INSERT INTO tab_haoban_friend_setting
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="friendSettingId != null">
friend_setting_id,
</if>
<if test="wxEnterpriseId != null and wxEnterpriseId != ''">
wx_enterprise_id,
</if>
<if test="friendSettingType != null">
friend_setting_type,
</if>
<if test="updateId != null and updateId != ''">
update_id,
</if>
<if test="updateName != null and updateName != ''">
update_name,
</if>
<if test="createTime != null">
create_time,
</if>
<if test="updateTime != null">
update_time,
</if>
<if test="deleteFlag != null">
delete_flag,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="friendSettingId != null">
#{friendSettingId},
</if>
<if test="wxEnterpriseId != null and wxEnterpriseId != ''">
#{wxEnterpriseId},
</if>
<if test="friendSettingType != null">
#{friendSettingType},
</if>
<if test="updateId != null and updateId != ''">
#{updateId},
</if>
<if test="updateName != null and updateName != ''">
#{updateName},
</if>
<if test="createTime != null">
#{createTime},
</if>
<if test="updateTime != null">
#{updateTime},
</if>
<if test="deleteFlag != null">
#{deleteFlag},
</if>
</trim>
</insert>
<!--通过主键修改数据-->
<update id="update" parameterType="com.gic.haoban.manage.service.entity.TabHaobanFriendSetting">
update tab_haoban_friend_setting
<set>
<if test="wxEnterpriseId != null and wxEnterpriseId != ''">
wx_enterprise_id = #{wxEnterpriseId},
</if>
<if test="friendSettingType != null">
friend_setting_type = #{friendSettingType},
</if>
<if test="updateId != null and updateId != ''">
update_id = #{updateId},
</if>
<if test="updateName != null and updateName != ''">
update_name = #{updateName},
</if>
<if test="createTime != null">
create_time = #{createTime},
</if>
<if test="updateTime != null">
update_time = #{updateTime},
</if>
<if test="deleteFlag != null">
delete_flag = #{deleteFlag},
</if>
</set>
where friend_setting_id = #{friendSettingId}
</update>
<!--通过主键删除-->
<delete id="deleteById">
delete
from tab_haoban_friend_setting
where friend_setting_id = #{friendSettingId}
</delete>
<!--查询单个-->
<select id="queryById" resultMap="TabHaobanFriendSettingMap">
select
<include refid="Base_Column_List"/>
from tab_haoban_friend_setting
where friend_setting_id = #{friendSettingId}
</select>
<!--通过实体作为筛选条件查询-->
<select id="queryAll" parameterType="com.gic.haoban.manage.service.entity.TabHaobanFriendSetting"
resultMap="TabHaobanFriendSettingMap">
select
<include refid="Base_Column_List"/>
from tab_haoban_friend_setting
<where>
<if test="friendSettingId != null">
and friend_setting_id = #{friendSettingId}
</if>
<if test="wxEnterpriseId != null and wxEnterpriseId != ''">
and wx_enterprise_id = #{wxEnterpriseId}
</if>
<if test="friendSettingType != null">
and friend_setting_type = #{friendSettingType}
</if>
<if test="updateId != null and updateId != ''">
and update_id = #{updateId}
</if>
<if test="updateName != null and updateName != ''">
and update_name = #{updateName}
</if>
<if test="createTime != null">
and create_time = #{createTime}
</if>
<if test="updateTime != null">
and update_time = #{updateTime}
</if>
<if test="deleteFlag != null">
and delete_flag = #{deleteFlag}
</if>
</where>
</select>
<select id="queryCountByPage" resultType="int">
select count(*)
from tab_haoban_friend_setting
</select>
<select id="queryListByPage" resultMap="TabHaobanFriendSettingMap">
select
<include refid="Base_Column_List"/>
from tab_haoban_friend_setting
limit #{offset}, #{limit}
</select>
<select id="getByWxEnterpriseId" resultMap="TabHaobanFriendSettingMap">
select
<include refid="Base_Column_List"/>
from tab_haoban_friend_setting where wx_enterprise_id = #{wxEnterpriseId} and delete_flag = 0
</select>
</mapper>
......@@ -11,10 +11,14 @@
<result column="open_flag" jdbcType="INTEGER" property="openFlag"/>
<result column="create_time" jdbcType="TIMESTAMP" property="createTime"/>
<result column="update_time" jdbcType="TIMESTAMP" property="updateTime"/>
<result column="operator_id" jdbcType="VARCHAR" property="operatorId"/>
<result column="operator_name" jdbcType="VARCHAR" property="operatorName"/>
</resultMap>
<sql id="Base_Column_List">
welcome_id, wx_enterprise_id, title, welcome_content,welcome_img,open_flag, status_flag, create_time, update_time
welcome_id
, wx_enterprise_id, title, welcome_content,welcome_img,open_flag, status_flag,
create_time, update_time, operator_id, operator_name
</sql>
<select id="selectByPrimaryKey" parameterType="java.lang.String" resultMap="BaseResultMap">
......@@ -33,11 +37,18 @@
<insert id="insert" parameterType="com.gic.haoban.manage.service.entity.TabWelcome">
insert into tab_haoban_welcome (welcome_id, wx_enterprise_id, title,
welcome_content, welcome_img, open_flag, status_flag, create_time,
update_time)
values (#{welcomeId,jdbcType=VARCHAR}, #{wxEnterpriseId,jdbcType=VARCHAR}, #{title,jdbcType=VARCHAR},
#{welcomeContent,jdbcType=VARCHAR}, #{welcomeImg}, #{openFlag},
#{statusFlag,jdbcType=INTEGER}, #{createTime,jdbcType=TIMESTAMP},
#{updateTime,jdbcType=TIMESTAMP})
update_time, operator_id, operator_name)
values (#{welcomeId,jdbcType=VARCHAR},
#{wxEnterpriseId,jdbcType=VARCHAR},
#{title,jdbcType=VARCHAR},
#{welcomeContent,jdbcType=VARCHAR},
#{welcomeImg},
#{openFlag},
#{statusFlag,jdbcType=INTEGER},
#{createTime,jdbcType=TIMESTAMP},
#{updateTime,jdbcType=TIMESTAMP},
#{operatorId,jdbcType=VARCHAR},
#{operatorName,jdbcType=VARCHAR})
</insert>
<update id="updateByPrimaryKeySelective" parameterType="com.gic.haoban.manage.service.entity.TabWelcome">
......@@ -67,6 +78,12 @@
<if test="updateTime != null">
update_time = #{updateTime,jdbcType=TIMESTAMP},
</if>
<if test="operatorId != null">
operator_id = #{operatorId,jdbcType=TIMESTAMP},
</if>
<if test="operatorName != null">
operator_name = #{operatorName,jdbcType=TIMESTAMP},
</if>
</set>
where welcome_id = #{welcomeId,jdbcType=VARCHAR}
</update>
......@@ -78,4 +95,24 @@
where wx_enterprise_id = #{wxEnterpriseId,jdbcType=VARCHAR}
and status_flag=1
</select>
<select id="listByWxEnterpriseId" resultMap="BaseResultMap">
select
<include refid="Base_Column_List"/>
from tab_haoban_welcome
where wx_enterprise_id = #{wxEnterpriseId,jdbcType=VARCHAR}
<if test="title != null and title != ''">
title = #{title,jdbcType=VARCHAR},
</if>
and status_flag=1
order by create_time desc
</select>
<select id="countByWxEnterpriseId" resultType="java.lang.Long">
select count(*)
from tab_haoban_welcome
where wx_enterprise_id = #{wxEnterpriseId,jdbcType=VARCHAR}
and status_flag = 1
</select>
</mapper>
\ No newline at end of file
<?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.gic.haoban.manage.service.dao.mapper.TabHaobanWelcomeMediaMapper">
<resultMap type="com.gic.haoban.manage.service.entity.TabHaobanWelcomeMedia" id="TabHaobanWelcomeMediaMap">
<result property="welcomeMediaId" column="welcome_media_id" jdbcType="BIGINT"/>
<result property="wxEnterpriseId" column="wx_enterprise_id" jdbcType="VARCHAR"/>
<result property="welcomeId" column="welcome_id" jdbcType="VARCHAR"/>
<result property="mediaTitle" column="media_title" jdbcType="VARCHAR"/>
<result property="mediaType" column="media_type" jdbcType="INTEGER"/>
<result property="mediaUrl" column="media_url" jdbcType="VARCHAR"/>
<result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
<result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
<result property="deleteFlag" column="delete_flag" jdbcType="INTEGER"/>
</resultMap>
<!--查询单个-->
<select id="queryById" resultMap="TabHaobanWelcomeMediaMap">
select welcome_media_id,
wx_enterprise_id,
welcome_id,
media_title,
media_type,
media_url,
create_time,
update_time,
delete_flag
from haoban3.tab_haoban_welcome_media
where welcome_media_id = #{welcomeMediaId}
</select>
<select id="listByWelcomeId" resultType="com.gic.haoban.manage.service.entity.TabHaobanWelcomeMedia">
select welcome_media_id,
wx_enterprise_id,
welcome_id,
media_title,
media_type,
media_url,
create_time,
update_time,
delete_flag
from tab_haoban_welcome_media
where welcome_id = #{welcomeId} and delete_flag = 0
</select>
<!--新增所有列-->
<insert id="insert" keyProperty="welcomeSuitRangId" useGeneratedKeys="false">
insert into tab_haoban_welcome_media(welcome_media_id, wx_enterprise_id, welcome_id, media_title, media_type, media_url,
create_time, update_time, delete_flag)
values (#{welcomeMediaId}, #{wxEnterpriseId}, #{welcomeId}, #{mediaTitle}, #{mediaType}, #{mediaUrl}, #{createTime}, #{updateTime},
#{deleteFlag})
</insert>
<!--通过主键修改数据-->
<update id="update">
update haoban3.tab_haoban_welcome_media
<set>
<if test="wxEnterpriseId != null and wxEnterpriseId != ''">
wx_enterprise_id = #{wxEnterpriseId},
</if>
<if test="welcomeId != null and welcomeId != ''">
welcome_id = #{welcomeId},
</if>
<if test="mediaTitle != null">
media_title = #{mediaTitle},
</if>
<if test="mediaType != null">
media_type = #{mediaType},
</if>
<if test="mediaUrl != null and mediaUrl != ''">
media_url = #{mediaUrl},
</if>
<if test="createTime != null">
create_time = #{createTime},
</if>
<if test="updateTime != null">
update_time = #{updateTime},
</if>
<if test="deleteFlag != null">
delete_flag = #{deleteFlag},
</if>
</set>
where welcome_media_id = #{welcomeMediaId}
</update>
<update id="removeByWelcomeId">
update tab_haoban_welcome_media
set delete_flag = 1
where welcome_id = #{welcomeId}
</update>
</mapper>
......@@ -189,7 +189,7 @@
from tab_haoban_miniprogram_setting
where wx_enterprise_id = #{wxEnterpriseId,jdbcType=VARCHAR}
and enterprise_id=#{enterpriseId}
and status_flag=1
and status_flag=1 order by create_time desc limit 1
</select>
<select id="listMiniprogramSetting" resultMap="BaseResultMap">
......
package com.gic.haoban.manage.web.controller;
import com.gic.api.base.commons.Constant;
import com.gic.api.base.commons.ServiceResponse;
import com.gic.commons.util.EntityUtil;
import com.gic.commons.webapi.reponse.RestResponse;
import com.gic.haoban.base.api.common.pojo.dto.WebLoginDTO;
import com.gic.haoban.common.utils.AuthWebRequestUtil;
import com.gic.haoban.manage.api.dto.welcome.dto.FriendSettingDetailDTO;
import com.gic.haoban.manage.api.dto.welcome.dto.WelcomeDetailDTO;
import com.gic.haoban.manage.api.dto.welcome.dto.WelcomeListDTO;
import com.gic.haoban.manage.api.dto.welcome.qdto.SaveFriendSettingQDTO;
import com.gic.haoban.manage.api.dto.welcome.qdto.SaveWelcomeMediaQDTO;
import com.gic.haoban.manage.api.dto.welcome.qdto.SaveWelcomeQDTO;
import com.gic.haoban.manage.api.service.out.WelcomeApiService;
import com.gic.haoban.manage.web.qo.welcome.ListWelcomeQO;
import com.gic.haoban.manage.web.qo.welcome.SaveFriendSettingQO;
import com.gic.haoban.manage.web.qo.welcome.SaveWelcomeQO;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.List;
/**
* desc:欢迎语controller
*
* @author: YongEn
* @date: 2022/2/8
**/
@RestController
@RequestMapping("/welcome")
public class WelcomeController extends WebBaseController {
@Autowired
private WelcomeApiService welcomeApiService;
/**
* desc: 保存欢迎语
*
* @param qo qo
* @return : {@link RestResponse< Boolean>}
* @author : YongEn
* @date : 2022/2/11
*/
@RequestMapping(value = "/save", method = RequestMethod.POST)
public RestResponse<Boolean> saveWelcome(@RequestBody @Valid SaveWelcomeQO qo) {
WebLoginDTO login = AuthWebRequestUtil.getLoginUser();
SaveWelcomeQDTO qdto = new SaveWelcomeQDTO();
qdto.setWelcomeId(qo.getWelcomeId());
qdto.setWxEnterpriseId(qo.getWxEnterpriseId());
qdto.setTitle(qo.getTitle());
qdto.setWelcomeContent(qo.getWelcomeContent());
qdto.setMediaList(EntityUtil.changeEntityListNew(SaveWelcomeMediaQDTO.class, qo.getMediaList()));
qdto.setOperatorId(login.getStaffDTO().getStaffId());
qdto.setOperatorName(login.getStaffDTO().getStaffName());
qdto.setSuitDepartmentAddList(qo.getSuitDepartmentAddList());
qdto.setSuitDepartmentDeleteList(qo.getSuitDepartmentDeleteList());
// 员工暂时不传
ServiceResponse<Boolean> response = welcomeApiService.saveWelcome(qdto);
return RestResponse.successResult(response.getResult());
}
/**
* desc: 删除欢迎语
*
* @param welcomeId 欢迎语id
* @return : {@link RestResponse< Boolean>}
* @author : YongEn
* @date : 2022/2/11
*/
@RequestMapping(value = "/remove", method = RequestMethod.GET)
public RestResponse<Boolean> removeWelcome(@RequestParam("welcomeId") String welcomeId) {
if (StringUtils.isEmpty(welcomeId)) {
RestResponse.failure(Constant.STRING_1, "欢迎语id为空", Boolean.FALSE);
}
ServiceResponse<Boolean> response = welcomeApiService.removeWelcome(welcomeId);
return RestResponse.successResult(response.getResult());
}
/**
* desc: 查询欢迎语列表
*
* @param qo qo
* @return : {@link RestResponse< List< WelcomeListDTO>>}
* @author : YongEn
* @date : 2022/2/11
*/
@RequestMapping(value = "/list", method = RequestMethod.POST)
public RestResponse<List<WelcomeListDTO>> listWelcome(@RequestBody @Valid ListWelcomeQO qo) {
ServiceResponse<List<WelcomeListDTO>> response = welcomeApiService.listWelcome(qo.getWxEnterpriseId(), qo.getTitle());
return RestResponse.successResult(response.getResult());
}
/**
* desc: 获取欢迎语
*
* @param welcomeId 欢迎语id
* @return : {@link RestResponse< WelcomeDetailDTO>}
* @author : YongEn
* @date : 2022/2/11
*/
@RequestMapping(value = "/get", method = RequestMethod.GET)
public RestResponse<WelcomeDetailDTO> getWelcome(@RequestParam("welcomeId") String welcomeId) {
if (StringUtils.isEmpty(welcomeId)) {
RestResponse.failure(Constant.STRING_1, "欢迎语id为空");
}
ServiceResponse<WelcomeDetailDTO> response = welcomeApiService.getWelcome(welcomeId);
return RestResponse.successResult(response.getResult());
}
/**
* desc: 保存加好友配置
*
* @param qo qo
* @return : {@link RestResponse< Boolean>}
* @author : YongEn
* @date : 2022/2/11
*/
@RequestMapping(value = "/save/friend-setting", method = RequestMethod.POST)
public RestResponse<Boolean> saveFriendSetting(@RequestBody @Valid SaveFriendSettingQO qo) {
WebLoginDTO login = AuthWebRequestUtil.getLoginUser();
SaveFriendSettingQDTO qdto = EntityUtil.changeEntityNew(SaveFriendSettingQDTO.class, qo);
qdto.setUpdateId(login.getStaffDTO().getStaffId());
qdto.setUpdateName(login.getStaffDTO().getStaffName());
ServiceResponse<Boolean> response = welcomeApiService.saveFriendSetting(qdto);
return RestResponse.successResult(response.getResult());
}
/**
* desc: 获取加好友配置
*
* @param wxEnterpriseId 微信企业id
* @return : {@link RestResponse< FriendSettingDetailDTO>}
* @author : YongEn
* @date : 2022/2/11
*/
@RequestMapping(value = "/get/friend-setting", method = RequestMethod.GET)
public RestResponse<FriendSettingDetailDTO> getFriendSetting(@RequestParam("wxEnterpriseId") String wxEnterpriseId) {
if (StringUtils.isEmpty(wxEnterpriseId)) {
RestResponse.failure(Constant.STRING_1, "微信企业id为空", Boolean.FALSE);
}
ServiceResponse<FriendSettingDetailDTO> response = welcomeApiService.getFriendSetting(wxEnterpriseId);
return RestResponse.successResult(response.getResult());
}
}
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