package jnpf.message.mapper;
|
|
|
import cn.hutool.core.util.ObjectUtil;
|
import com.baomidou.mybatisplus.annotation.TableField;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import jnpf.base.mapper.SuperMapper;
|
import jnpf.message.entity.MessageTemplateConfigEntity;
|
import jnpf.message.model.messagetemplateconfig.MessageTemplateConfigPagination;
|
import jnpf.util.StringUtil;
|
|
import java.lang.reflect.Field;
|
import java.util.List;
|
|
/**
|
* 消息模板(新)
|
* 版本: V3.2.0
|
* 版权: 引迈信息技术有限公司(https://www.jnpfsoft.com)
|
* 作者: JNPF开发平台组
|
* 日期: 2022-08-18
|
*/
|
public interface MessageTemplateConfigMapper extends SuperMapper<MessageTemplateConfigEntity> {
|
|
default List<MessageTemplateConfigEntity> getList(MessageTemplateConfigPagination MessageTemplateConfigPagination) {
|
return getTypeList(MessageTemplateConfigPagination, MessageTemplateConfigPagination.getDataType());
|
}
|
|
default List<MessageTemplateConfigEntity> getTypeList(MessageTemplateConfigPagination MessageTemplateConfigPagination, String dataType) {
|
QueryWrapper<MessageTemplateConfigEntity> messageTemplateNewQueryWrapper = new QueryWrapper<>();
|
//关键字
|
if (ObjectUtil.isNotEmpty(MessageTemplateConfigPagination.getKeyword())) {
|
messageTemplateNewQueryWrapper.lambda().and(t -> t.like(MessageTemplateConfigEntity::getEnCode, MessageTemplateConfigPagination.getKeyword()).
|
or().like(MessageTemplateConfigEntity::getFullName, MessageTemplateConfigPagination.getKeyword()));
|
}
|
//模板类型
|
if (ObjectUtil.isNotEmpty(MessageTemplateConfigPagination.getTemplateType())) {
|
messageTemplateNewQueryWrapper.lambda().eq(MessageTemplateConfigEntity::getTemplateType, MessageTemplateConfigPagination.getTemplateType());
|
}
|
//消息类型
|
if (ObjectUtil.isNotEmpty(MessageTemplateConfigPagination.getMessageType())) {
|
messageTemplateNewQueryWrapper.lambda().eq(MessageTemplateConfigEntity::getMessageType, MessageTemplateConfigPagination.getMessageType());
|
}
|
//消息来源
|
if (ObjectUtil.isNotEmpty(MessageTemplateConfigPagination.getMessageSource())) {
|
messageTemplateNewQueryWrapper.lambda().eq(MessageTemplateConfigEntity::getMessageSource, MessageTemplateConfigPagination.getMessageSource());
|
}
|
//状态
|
if (ObjectUtil.isNotEmpty(MessageTemplateConfigPagination.getEnabledMark())) {
|
int enabledMark = Integer.parseInt(MessageTemplateConfigPagination.getEnabledMark());
|
messageTemplateNewQueryWrapper.lambda().eq(MessageTemplateConfigEntity::getEnabledMark, enabledMark);
|
}
|
|
//排序
|
if (StringUtil.isEmpty(MessageTemplateConfigPagination.getSidx())) {
|
messageTemplateNewQueryWrapper.lambda().orderByAsc(MessageTemplateConfigEntity::getSortCode).orderByDesc(MessageTemplateConfigEntity::getCreatorTime).orderByDesc(MessageTemplateConfigEntity::getLastModifyTime);
|
} else {
|
try {
|
String sidx = MessageTemplateConfigPagination.getSidx();
|
MessageTemplateConfigEntity MessageTemplateConfigEntity = new MessageTemplateConfigEntity();
|
Field declaredField = MessageTemplateConfigEntity.getClass().getDeclaredField(sidx);
|
declaredField.setAccessible(true);
|
String value = declaredField.getAnnotation(TableField.class).value();
|
messageTemplateNewQueryWrapper = "asc".equals(MessageTemplateConfigPagination.getSort().toLowerCase()) ? messageTemplateNewQueryWrapper.orderByAsc(value) : messageTemplateNewQueryWrapper.orderByDesc(value);
|
} catch (NoSuchFieldException e) {
|
e.printStackTrace();
|
}
|
}
|
if (!"1".equals(dataType)) {
|
Page<MessageTemplateConfigEntity> page = new Page<>(MessageTemplateConfigPagination.getCurrentPage(), MessageTemplateConfigPagination.getPageSize());
|
IPage<MessageTemplateConfigEntity> userIPage = this.selectPage(page, messageTemplateNewQueryWrapper);
|
return MessageTemplateConfigPagination.setData(userIPage.getRecords(), userIPage.getTotal());
|
} else {
|
return this.selectList(messageTemplateNewQueryWrapper);
|
}
|
}
|
|
|
default MessageTemplateConfigEntity getInfo(String id) {
|
QueryWrapper<MessageTemplateConfigEntity> queryWrapper = new QueryWrapper<>();
|
queryWrapper.lambda().eq(MessageTemplateConfigEntity::getId, id);
|
return this.selectOne(queryWrapper);
|
}
|
|
default MessageTemplateConfigEntity getInfoByEnCode(String enCode, String messageType) {
|
QueryWrapper<MessageTemplateConfigEntity> queryWrapper = new QueryWrapper<>();
|
queryWrapper.lambda().eq(MessageTemplateConfigEntity::getEnCode, enCode);
|
queryWrapper.lambda().eq(MessageTemplateConfigEntity::getMessageType, messageType);
|
return this.selectOne(queryWrapper);
|
}
|
|
default boolean isExistByFullName(String fullName, String id) {
|
QueryWrapper<MessageTemplateConfigEntity> queryWrapper = new QueryWrapper<>();
|
queryWrapper.lambda().eq(MessageTemplateConfigEntity::getFullName, fullName);
|
if (!StringUtil.isEmpty(id)) {
|
queryWrapper.lambda().ne(MessageTemplateConfigEntity::getId, id);
|
}
|
return this.selectCount(queryWrapper) > 0 ? true : false;
|
}
|
|
default boolean isExistByEnCode(String enCode, String id) {
|
QueryWrapper<MessageTemplateConfigEntity> queryWrapper = new QueryWrapper<>();
|
queryWrapper.lambda().eq(MessageTemplateConfigEntity::getEnCode, enCode);
|
if (!StringUtil.isEmpty(id)) {
|
queryWrapper.lambda().ne(MessageTemplateConfigEntity::getId, id);
|
}
|
return this.selectCount(queryWrapper) > 0 ? true : false;
|
}
|
}
|