企业微信适配

yun-zuoyi
汪云昊 5 years ago
parent b2517a11b8
commit cf2bf8d291

@ -23,11 +23,11 @@ public class BaseThreadLocal {
return new HashMap<String,Object>();
}
};*/
private static final ThreadLocal<HashMap<String,Object>> dataThredLocal = ThreadLocal.withInitial(() -> new HashMap<>());
private static final ThreadLocal<HashMap<String,Object>> DATA_THREAD_LOCAL = ThreadLocal.withInitial(() -> new HashMap<>());
public static Object getData(String key) {
if(dataThredLocal.get() != null) {
return dataThredLocal.get().get(key);
if(DATA_THREAD_LOCAL.get() != null) {
return DATA_THREAD_LOCAL.get().get(key);
}else{
return null;
}
@ -71,7 +71,7 @@ public class BaseThreadLocal {
public static void setData(String name, Object value) {
//不需要主数据源开始,则自动切换
dataThredLocal.get().put(name, value);
DATA_THREAD_LOCAL.get().put(name, value);
}
/**
@ -79,13 +79,13 @@ public class BaseThreadLocal {
* ascept
*/
public static void removeThreadLocal(){
if(dataThredLocal != null) {
if (dataThredLocal.get() != null) {
if(DATA_THREAD_LOCAL != null) {
if (DATA_THREAD_LOCAL.get() != null) {
//清空数据
dataThredLocal.get().clear();
DATA_THREAD_LOCAL.get().clear();
}
//移除当前线程信息
dataThredLocal.remove();
DATA_THREAD_LOCAL.remove();
}
}
@ -96,9 +96,9 @@ public class BaseThreadLocal {
public static void printDetail(){
LOGGER.info("========本地线程临时数据=======");
LOGGER.info("数据数量:{}", dataThredLocal.get().size());
for(String key : dataThredLocal.get().keySet()){
LOGGER.info("key:{},value:{}",key,dataThredLocal.get().get(key));
LOGGER.info("数据数量:{}", DATA_THREAD_LOCAL.get().size());
for(String key : DATA_THREAD_LOCAL.get().keySet()){
LOGGER.info("key:{},value:{}",key, DATA_THREAD_LOCAL.get().get(key));
}
}

@ -483,7 +483,8 @@ public class ImppEnumUtil {
MAIL(1, "邮件", "邮件"),
LETTER(2, "站内信", "站内信"),
SWEB_NOTICE(3, "SWEB通知", "SWEB通知"),
SWEB_PUBLIC_NOTICE(4, "SWEB公告", "SWEB公告");
SWEB_PUBLIC_NOTICE(4, "SWEB公告", "SWEB公告"),
WORK_WECHAT_TASK_CARD(5, "企业微信任务卡片", "企业微信任务卡片");
private int value;
private String name;
@ -1079,7 +1080,8 @@ public class ImppEnumUtil {
CONTACT(4, "联系人"),
BASIS(5, "基础"),
CONFIG(6, "系统配置"),
LOG(7, "日志配置");
LOG(7, "日志配置"),
WORK_WECHAT(8, "企业微信配置");
private int value;
private String description;
@ -1376,4 +1378,97 @@ public class ImppEnumUtil {
return tmp;
}
}
/**
*
*/
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum USER_EXTERNAL_REF {
WORK_WECHAT(10, "企业微信");
private int value;
private String description;
USER_EXTERNAL_REF(int value, String description) {
this.value = value;
this.description = description;
}
public int getValue() {
return value;
}
public String getDescription() {
return description;
}
public static String valueOf(int val) {
String tmp = null;
for (int i = 0; i < values().length; i++) {
if (values()[i].value == val) {
tmp = values()[i].description;
}
}
return tmp;
}
public static Integer descriptionOfValue(String desc) {
Integer tmp = null;
for (int i = 0; i < values().length; i++) {
if (values()[i].description.equals(desc)) {
tmp = values()[i].value;
}
}
return tmp;
}
}
/**
*
*/
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum USER_BIND_PROPERTY{
USER_LOGIN_NAME("userId", "登录名称"),
USER_NAME("userName", "用户名称"),
EMAIL("email", "邮箱"),
USER_PHONE("phone", "手机号"),
USER_EMP_NO("empNo", "工号"),
USER_WECHAT_NO("userWeChatNo", "微信号");
private String value;
private String description;
private USER_BIND_PROPERTY(String value, String description) {
this.value = value;
this.description = description;
}
public String getValue() {
return value;
}
public String getDescription() {
return description;
}
public static String valueOfDescription(String val) {
String tmp = null;
for (int i = 0; i < values().length; i++) {
if (values()[i].value.equals(val)) {
tmp = values()[i].description;
}
}
return tmp;
}
public static USER_BIND_PROPERTY valueOfEnum(String val) {
for (int i = 0; i < values().length; i++) {
if (values()[i].value.equals(val)) {
return values()[i];
}
}
return null;
}
}
}

@ -42,7 +42,8 @@ public class SysMessage extends BaseBean {
private Integer messageSoftType;
@Column(name = "MESSAGE_TYPE")
@ApiParam(value = "消息类型(枚举ImppEnumUtil.MESSAGE_TYPE)", example = "-1")
@ApiParam(value = "消息类型(枚举:)", example = "-1")
@AnnoOutputColumn(refClass = ImppEnumUtil.MESSAGE_TYPE.class)
private Integer messageType;
public int getMessageTypeValue() {

@ -13,6 +13,7 @@ import org.hibernate.annotations.DynamicInsert;
import org.hibernate.annotations.DynamicUpdate;
import javax.persistence.*;
import java.util.Map;
/**
* @Description :
@ -81,6 +82,11 @@ public class SysPojoVersion extends BaseBean {
@ApiParam(value ="记录对象对比差异")
private String pojoCompare;
@Lob
@Column(name="POJO_COMPARE_TXT")
@ApiParam(value ="记录对象对比差异")
private String pojoCompareTxt;
@Transient
@ApiParam(value ="用户部门信息")
private SysPojoVersionDetail versionDetail;
@ -88,4 +94,8 @@ public class SysPojoVersion extends BaseBean {
@Transient
@ApiParam(value ="操作对象本身")
private String bean;
@Transient
@ApiParam(value ="操作对象属性描述")
private Map<String, String> pojoPropDesc;
}

@ -44,12 +44,27 @@ public class SysPojoVersionDetail extends BaseBean {
private String pojoBefore;
@Lob
@Column(name="POJO_BEFORE_TXT",length = 5000)
@ApiParam(value ="原始对象信息转换后")
private String pojoBeforeTxt;
@Lob
@Column(name="POJO_AFTER",length = 5000)
@ApiParam(value ="修改之后对象信息")
private String pojoAfter;
@Lob
@Column(name="POJO_AFTER_TXT",length = 5000)
@ApiParam(value ="修改之后对象信息转换后")
private String pojoAfterTxt;
@Lob
@Column(name="POJO_COMPARE",length = 5000)
@ApiParam(value ="记录对象对比差异")
private String pojoCompare;
@Lob
@Column(name="POJO_COMPARE_TXT",length = 5000)
@ApiParam(value ="记录对象对比差异")
private String pojoCompareTxt;
}

@ -0,0 +1,49 @@
package cn.estsh.i3plus.pojo.platform.bean;
import cn.estsh.i3plus.pojo.base.annotation.AnnoOutputColumn;
import cn.estsh.i3plus.pojo.base.bean.BaseBean;
import cn.estsh.i3plus.pojo.base.enumutil.ImppEnumUtil;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiParam;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.hibernate.annotations.DynamicInsert;
import org.hibernate.annotations.DynamicUpdate;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
/**
* @Description :
* @Reference :
* @Author : yunhao
* @CreateDate : 2020-09-03 13:32
* @Modify:
**/
@Data
@Entity
@DynamicInsert
@DynamicUpdate
@EqualsAndHashCode(callSuper = true)
@Table(name="SYS_REF_USER_EXTERNAL")
@Api(value="用户外部关系",description = "用户外部关系")
public class SysRefUserExternal extends BaseBean {
@Column(name="USER_ID")
@ApiParam(value ="用户id" ,example = "-1")
@JsonSerialize(using = ToStringSerializer.class)
private Long userId;
@Column(name="EXTERNAL_REF")
@ApiParam(value ="对象id" ,example = "-1")
@AnnoOutputColumn(refClass = ImppEnumUtil.USER_EXTERNAL_REF.class)
private Integer externalRef;
@Column(name="REF_VALUE")
@ApiParam(value ="对象id" ,example = "-1")
private String refValue;
}

@ -1,5 +1,6 @@
package cn.estsh.i3plus.pojo.platform.bean;
import cn.estsh.i3plus.pojo.base.annotation.AnnoOutputColumn;
import cn.estsh.i3plus.pojo.base.bean.BaseBean;
import cn.estsh.i3plus.pojo.base.enumutil.ImppEnumUtil;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
@ -72,6 +73,7 @@ public class SysRefUserMessage extends BaseBean {
@Column(name="MESSAGE_STATUS")
@ApiParam(value = "消息状态")
@AnnoOutputColumn(refClass = ImppEnumUtil.MESSAGE_STATUS.class)
private Integer messageStatus;
public int getMessageStatusValue() {
@ -81,4 +83,8 @@ public class SysRefUserMessage extends BaseBean {
return messageStatus.intValue();
}
}
public String getMessageStatusTxt() {
return ImppEnumUtil.MESSAGE_STATUS.valueOfDescription(getMessageStatusValue());
}
}

@ -9,9 +9,9 @@ import lombok.Data;
import lombok.EqualsAndHashCode;
import org.hibernate.annotations.DynamicInsert;
import org.hibernate.annotations.DynamicUpdate;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Lob;
import javax.persistence.Table;
import javax.persistence.Transient;
import java.util.List;
@ -76,6 +76,10 @@ public class SysUser extends BaseBean {
@ApiParam(value ="手机号" , access ="手机号")
private String userPhone;
@Column(name="USER_WECHAT_NO")
@ApiParam(value ="微信号")
private String userWeChatNo;
@Column(name="USER_STATUS")
@ApiParam(value ="账号状态(枚举1正常,2冻结使用,3账号异常,4离职5服务到期)" , example ="-1")
private Integer userStatus;

@ -0,0 +1,14 @@
package cn.estsh.i3plus.pojo.platform.repository;
import cn.estsh.i3plus.pojo.base.jpa.dao.BaseRepository;
import cn.estsh.i3plus.pojo.platform.bean.SysRefUserExternal;
/**
* @Description :
* @Reference :
* @Author : yunhao
* @CreateDate : 2020-09-03 13:44
* @Modify:
**/
public interface SysRefUserExternalRepository extends BaseRepository<SysRefUserExternal, Long> {
}

@ -846,6 +846,7 @@ public class CoreHqlPack {
public static String packHqlSysRefUserMessage(SysRefUserMessage sysRefUserMessage) {
StringBuffer result = new StringBuffer();
HqlPack.getNumEqualPack(sysRefUserMessage.getMessageId(), "messageId", result);
HqlPack.getNumEqualPack(sysRefUserMessage.getMessageTypeRdd(), "messageTypeRdd", result);
HqlPack.getNumEqualPack(sysRefUserMessage.getMessageSoftType(), "messageSoftType", result);
HqlPack.getStringLikerPack(sysRefUserMessage.getMessageTitleRdd(), "messageTitleRdd", result);
@ -1182,4 +1183,31 @@ public class CoreHqlPack {
return ddlPackBean;
}
public static DdlPackBean packHqlFindUserIdByExternalRef(Integer externalRef,List<String> valueList){
DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean();
DdlPreparedPack.getNumEqualPack(externalRef,"externalRef",ddlPackBean);
DdlPreparedPack.getInPackList(valueList,"valueList",ddlPackBean);
return ddlPackBean;
}
public static DdlPackBean packHqlFindExternalRefByUserId(Integer externalRef,List<Long> userIdList){
DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean();
DdlPreparedPack.getNumEqualPack(externalRef,"externalRef",ddlPackBean);
DdlPreparedPack.getInPackList(userIdList,"userId",ddlPackBean);
return ddlPackBean;
}
public static DdlPackBean packHqlGetSysRefUserExternal(SysRefUserExternal sysRefUserExternal){
DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(sysRefUserExternal);
DdlPreparedPack.getNumEqualPack(sysRefUserExternal.getUserId(), "userId", ddlPackBean);
DdlPreparedPack.getNumEqualPack(sysRefUserExternal.getExternalRef(), "externalRef", ddlPackBean);
DdlPreparedPack.getStringEqualPack(sysRefUserExternal.getRefValue(), "refValue", ddlPackBean);
return ddlPackBean;
}
}
Loading…
Cancel
Save