diff --git a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/jpa/dao/BaseMongoRepository.java b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/jpa/dao/BaseMongoRepository.java index abb1c6d..fd1a7b4 100644 --- a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/jpa/dao/BaseMongoRepository.java +++ b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/jpa/dao/BaseMongoRepository.java @@ -36,13 +36,13 @@ public interface BaseMongoRepository extends MongoRe List findByBson(Bson bson,String orderByParam, int ascOrDesc); - long findByBsonCount(Bson bson); + int findByBsonCount(Bson bson); List findByBsonPager(Bson bson,Pager pager); List findByBsonPager(Bson bson,Pager pager,String orderByParam, int ascOrDesc); - long listCount(); + int listCount(); List listPager(Pager pager); diff --git a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/jpa/dao/BaseRepository.java b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/jpa/dao/BaseRepository.java index 7955b74..36a4f77 100644 --- a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/jpa/dao/BaseRepository.java +++ b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/jpa/dao/BaseRepository.java @@ -151,7 +151,7 @@ public interface BaseRepository extends JpaReposito public int listCount(); - public long findByPropertyCount(String propertyName, Object value); + public int findByPropertyCount(String propertyName, Object value); public int findByPropertyCount(String[] propertyNames, Object[] values); diff --git a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/jpa/daoimpl/BaseMongoRepositoryImpl.java b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/jpa/daoimpl/BaseMongoRepositoryImpl.java index ffd6b01..425b983 100644 --- a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/jpa/daoimpl/BaseMongoRepositoryImpl.java +++ b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/jpa/daoimpl/BaseMongoRepositoryImpl.java @@ -215,11 +215,11 @@ public class BaseMongoRepositoryImpl extends SimpleM } @Override - public long findByBsonCount(Bson bson) { + public int findByBsonCount(Bson bson) { if(bson == null){ - return mongoOperations.getCollection(this.entityInformation.getCollectionName()).count(); + return (int) mongoOperations.getCollection(this.entityInformation.getCollectionName()).count(); }else { - return mongoOperations.getCollection(this.entityInformation.getCollectionName()).count(bson); + return (int) mongoOperations.getCollection(this.entityInformation.getCollectionName()).count(bson); } } @@ -273,8 +273,8 @@ public class BaseMongoRepositoryImpl extends SimpleM } @Override - public long listCount() { - return mongoOperations.getCollection(this.entityInformation.getCollectionName()).count(); + public int listCount() { + return (int) mongoOperations.getCollection(this.entityInformation.getCollectionName()).count(); } @Override diff --git a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/jpa/daoimpl/BaseRepositoryImpl.java b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/jpa/daoimpl/BaseRepositoryImpl.java index dce4a33..b606733 100644 --- a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/jpa/daoimpl/BaseRepositoryImpl.java +++ b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/jpa/daoimpl/BaseRepositoryImpl.java @@ -406,11 +406,12 @@ public class BaseRepositoryImpl extends SimpleJpaRep } @Override - public long findByPropertyCount(String propertyName, Object value) { + public int findByPropertyCount(String propertyName, Object value) { String queryString = "select count(distinct model) from " + persistentClass.getName() + " as model where model." + propertyName + "= :" + propertyName; - return entityManager.createQuery(queryString, Long.class) + Long count = entityManager.createQuery(queryString, Long.class) .setParameter(propertyName, value) .getSingleResult(); + return count == null ? 0 : count.intValue(); } @Override diff --git a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/tool/BsonPackTool.java b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/tool/BsonPackTool.java index d7d98aa..3de28d8 100644 --- a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/tool/BsonPackTool.java +++ b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/tool/BsonPackTool.java @@ -14,6 +14,7 @@ import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.List; +import java.util.regex.Pattern; /** * @Description : @@ -118,12 +119,10 @@ public class BsonPackTool { * @param isShowTime 是否包含时分秒 */ public static Bson timeBuilder( String startDate,String endDate, String columnName, Bson bson, boolean isShowTime) { - startDate = getSafeParam(startDate); - endDate = getSafeParam(endDate); - if (startDate == null || startDate.trim().length() == 0) { startDate = "1900-01-01"; } else { + startDate = getSafeParam(startDate); startDate = startDate.trim(); } if (isShowTime && startDate.trim().length()<=11) { @@ -132,6 +131,7 @@ public class BsonPackTool { if (endDate == null || endDate.trim().length() == 0) { endDate = "2100-01-01"; } else { + endDate = getSafeParam(endDate); endDate = endDate.trim(); } if (isShowTime&& endDate.trim().length()<=11) { @@ -158,18 +158,19 @@ public class BsonPackTool { * @param date 开始日期和结束日期,以逗号分隔(分为开始时间和结束时间) * @param columnName HQL里对应的时间字段 * @param bson 封装的bson - * @param showTaday 如果没有开始时间和结束时间,是否查询当天时间,还是查询所有时间。true:查询当天时间,false:查询所有 + * @param showToday 如果没有开始时间和结束时间,是否查询当天时间,还是查询所有时间。true:查询当天时间,false:查询所有 * @param isShowTime 是否包含时分秒 */ - public static Bson timeBuilder( String date, String columnName, Bson bson, Boolean showTaday,boolean isShowTime) { - date = getSafeParam(date); - - String today = (new SimpleDateFormat("yyyy-MM-dd")).format(new Date()); - if(date != null && date.trim().length() > 0 && (date.length() == 1 || ",".equals(date))){ - //只有一个逗号 - date = ""; - } + public static Bson timeBuilder( String date, String columnName, Bson bson, Boolean showToday,boolean isShowTime) { if(date != null && date.trim().length() > 0){ + date = getSafeParam(date); + + String today = (new SimpleDateFormat("yyyy-MM-dd")).format(new Date()); + if(date.length() == 1 || ",".equals(date)){ + //只有一个逗号 + date = ""; + } + String[] time = date.split(","); if(time.length == 1){ //只有开始日期,没有结束日期 @@ -213,7 +214,7 @@ public class BsonPackTool { ); } } else { - if (showTaday) { + if (showToday) { if (isShowTime) { if(bson == null) { bson = Filters.and( @@ -264,7 +265,7 @@ public class BsonPackTool { }else{ bson = Filters.and( bson, - Filters.regex(columnName, str) //like + Filters.regex(columnName, str)//like ); } } @@ -373,7 +374,6 @@ public class BsonPackTool { */ public static Bson getNumEqualPack(Object data,String columnName, Bson bson) { if(data!=null&&Long.parseLong(data.toString()) > 0){ - data = getSafeParam(data); if(bson == null) { bson = Filters.and( Filters.eq(columnName, data) @@ -395,8 +395,6 @@ public class BsonPackTool { */ public static Bson getNumEqualPackForZero(Object data,String columnName, Bson bson) { if(data!=null&&Long.parseLong(data.toString()) >= 0){ - data = getSafeParam(data); - if(bson == null) { bson = Filters.and( Filters.eq(columnName, data) @@ -418,7 +416,6 @@ public class BsonPackTool { */ public static Bson getNumWithZeroEqualPack(Object data,String columnName, Bson bson) { if(data!=null&&Long.parseLong(data.toString()) >= 0){ - data = getSafeParam(data); if(bson == null) { bson = Filters.and( Filters.eq(columnName, data) @@ -440,7 +437,6 @@ public class BsonPackTool { */ public static Bson getNumBiggerPack(Object data,String columnName, Bson bson) { if(data!=null&&Long.parseLong(data.toString()) > 0){ - data = getSafeParam(data); if(bson == null) { bson = Filters.and( Filters.gt(columnName, data) @@ -462,7 +458,6 @@ public class BsonPackTool { */ public static Bson getNumSmallerPack(Object data,String columnName, Bson bson) { if(data!=null&&Long.parseLong(data.toString()) > 0){ - data = getSafeParam(data); if(bson == null) { bson = Filters.and( Filters.lt(columnName, data) @@ -484,7 +479,6 @@ public class BsonPackTool { */ public static Bson getDoubleBiggerPack(Object data,String columnName, Bson bson) { if(data!=null&&Double.parseDouble(data.toString()) > 0){ - data = getSafeParam(data); if(bson == null) { bson = Filters.and( Filters.gt(columnName, data) @@ -506,7 +500,6 @@ public class BsonPackTool { */ public static Bson getDoubleSmallerPack(Object data,String columnName, Bson bson) { if(data!=null&&Double.parseDouble(data.toString()) > 0){ - data = getSafeParam(data); if(bson == null) { bson = Filters.and( Filters.lt(columnName, data) @@ -528,7 +521,6 @@ public class BsonPackTool { */ public static Bson getNumEqualPack(Object data,String columnName, Bson bson,Integer expvalue) { if(data!=null&&Long.parseLong(data.toString()) > (long)expvalue){ - data = getSafeParam(data); if(bson == null) { bson = Filters.and( Filters.eq(columnName, data) @@ -550,7 +542,6 @@ public class BsonPackTool { */ public static Bson getNumEqualPackDouble(Object data,String columnName, Bson bson) { if(data!=null&&Double.parseDouble(data.toString()) > 0){ - data = getSafeParam(data); if(bson == null) { bson = Filters.and( Filters.eq(columnName, data) @@ -572,7 +563,6 @@ public class BsonPackTool { */ public static Bson getNumEqualPackDouble(Object data,String columnName, Bson bson,Integer expvalue) { if(data!=null&&Double.parseDouble(data.toString()) > (double)expvalue){ - data = getSafeParam(data); if(bson == null) { bson = Filters.and( Filters.eq(columnName, data) @@ -594,7 +584,6 @@ public class BsonPackTool { */ public static Bson getNumNOEqualPack(Object data,String columnName, Bson bson) { if(data!=null){ - data = getSafeParam(data); if(bson == null) { bson = Filters.and( Filters.ne(columnName, data) diff --git a/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/bean/LogSystem.java b/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/bean/LogSystem.java index 21ec54a..cd3d04b 100644 --- a/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/bean/LogSystem.java +++ b/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/bean/LogSystem.java @@ -1,6 +1,8 @@ package cn.estsh.i3plus.pojo.platform.bean; import cn.estsh.i3plus.pojo.base.bean.BaseBean; +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; @@ -33,12 +35,12 @@ public class LogSystem extends BaseBean { @ApiParam(value ="日志级别" , example ="1") //ImppEnumUtil.LOG_LEVEL private Integer logLevel; - + @Column(name="LOG_MODULE_ID") @ApiParam(value ="系统模块(枚举)", example = "1") //CommonEnumUtil.SOFT_TYPE private Integer logModuleId; - + @Column(name="REMOTE_IP") @ApiParam(value ="请求IP" , access ="请求IP") private String remoteIp; @@ -49,24 +51,24 @@ public class LogSystem extends BaseBean { @Column(name="HTTP_METHOD") @ApiParam(value ="http请求方法" , access ="http请求方法") - private String httpMethod;; + private String httpMethod; @Column(name="LOG_CLASS") @ApiParam(value ="触发类路径" , access ="触发类路径") private String logClass; - + @Column(name="LOG_METHOD") @ApiParam(value ="触发方法" , access ="触发方法") private String logMethod; @Column(name="ARGS_COUNT") - @ApiParam(value ="入参数量" , access ="入参数量") + @ApiParam(value ="入参数量" , access ="入参数量", example = "0") private Integer argsCount; @Column(name="LOG_ARGS") @ApiParam(value ="方法入参" , access ="方法入参") private String logArgs; - + @Column(name="LOG_TITLE") @ApiParam(value ="日志标题") private String logTitle; @@ -82,5 +84,6 @@ public class LogSystem extends BaseBean { @Column(name="EXECUTE_TIME") @ApiParam(value ="执行耗时") + @JsonSerialize(using = ToStringSerializer.class) private Long executeTime; } diff --git a/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/bean/SysLocaleResource.java b/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/bean/SysLocaleResource.java index 5398830..c739e77 100644 --- a/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/bean/SysLocaleResource.java +++ b/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/bean/SysLocaleResource.java @@ -52,9 +52,4 @@ public class SysLocaleResource extends BaseBean { @ApiParam(value = "是否系统参数",example = "2") //系统自带需要有初始化表,只能修改value,无法删除。 private Integer isSystem; - - @Column(name="is_default") - @ApiParam(value = "是否默认",example = "2") - //CommonEnumUtil.TRUE_OR_FALSE,新增resources时如果 - private Integer isDefault; } diff --git a/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/sqlpack/CoreBsonPack.java b/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/sqlpack/CoreBsonPack.java new file mode 100644 index 0000000..0eb049a --- /dev/null +++ b/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/sqlpack/CoreBsonPack.java @@ -0,0 +1,49 @@ +package cn.estsh.i3plus.pojo.platform.sqlpack; + +import cn.estsh.i3plus.pojo.base.tool.BsonPackTool; +import cn.estsh.i3plus.pojo.platform.bean.LogOperate; +import cn.estsh.i3plus.pojo.platform.bean.LogSystem; +import com.mongodb.BasicDBObject; +import com.mongodb.client.model.Filters; +import org.bson.conversions.Bson; + +import java.util.regex.Pattern; + +/** + * @Description : Bson对象封装 + * @Reference : + * @Author : yunhao + * @CreateDate : 2018-11-08 13:15 + * @Modify: + **/ +public class CoreBsonPack { + + /** + * 日志复杂查询 + * @param logSystem + * @return + */ + public static Bson packBsonByLogSystem(LogSystem logSystem){ + Bson bson = new BasicDBObject(); + + bson = BsonPackTool.getNumEqualPack(logSystem.getLogLevel(),"logLevel",bson); + bson = BsonPackTool.getNumEqualPack(logSystem.getLogModuleId(),"logModuleId",bson); + bson = BsonPackTool.timeBuilder(logSystem.getCreateDatetime(),"createDatetime",bson,false,false); + bson = BsonPackTool.getStringLikerPack(logSystem.getRemoteIp(),"remoteIp",bson); + bson = BsonPackTool.getStringLikerPack(logSystem.getRequestUrl(),"requestUrl",bson); + bson = BsonPackTool.getStringLikerPack(logSystem.getLogMethod(),"logMethod",bson); + + return bson; + } + + public static Bson packBsonByLogOperate(LogOperate logOperate){ + Bson bson = new BasicDBObject(); + + bson = BsonPackTool.getNumEqualPack(logOperate.getOperateTypeId(),"operateTypeId",bson); + bson = BsonPackTool.getNumEqualPack(logOperate.getOperateModuleId(),"operateModuleId",bson); + bson = BsonPackTool.timeBuilder(logOperate.getCreateDatetime(),"createDatetime",bson,false,false); + bson = BsonPackTool.getStringLikerPack(logOperate.getCreateUser(),"createUser",bson); + + return bson; + } +} diff --git a/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/sqlpack/CoreHqlPack.java b/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/sqlpack/CoreHqlPack.java index 3214b6b..fe9c284 100644 --- a/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/sqlpack/CoreHqlPack.java +++ b/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/sqlpack/CoreHqlPack.java @@ -24,12 +24,14 @@ public class CoreHqlPack { StringBuffer result = new StringBuffer(); //查询日期 - HqlPack.timeBuilder(sysLocaleResource.getCreateDateTimeStart(),sysLocaleResource.getCreateDateTimeEnd(), - "createDateTime", result, false); +// HqlPack.timeBuilder(sysLocaleResource.getCreateDateTimeStart(),sysLocaleResource.getCreateDateTimeEnd(), +// "createDateTime", result, false); //数字类型封装 HqlPack.getNumEqualPack(sysLocaleResource.getResourceType(),"resourceType",result); //字符串类型封装 HqlPack.getStringEqualPack(sysLocaleResource.getLanguageCode(),"languageCode",result); + //字符串类型封装 + HqlPack.getStringLikerPack(sysLocaleResource.getResourceKey(),"resourceKey",result); return result.toString(); } @@ -43,12 +45,12 @@ public class CoreHqlPack { StringBuffer result = new StringBuffer(); //查询日期 - HqlPack.timeBuilder(lang.getCreateDateTimeStart(),lang.getCreateDateTimeEnd(), - "createDateTime", result, false); - //数字类型封装 - HqlPack.getNumEqualPack(lang.getLanguageCode(),"languageCode",result); +// HqlPack.timeBuilder(lang.getCreateDateTimeStart(),lang.getCreateDateTimeEnd(), +// "createDateTime", result, false); //字符串类型封装 - HqlPack.getStringEqualPack(lang.getLanguageName(),"languageName",result); + HqlPack.getStringLikerPack(lang.getLanguageCode(),"languageCode",result); + //字符串类型封装 + HqlPack.getStringLikerPack(lang.getLanguageName(),"languageName",result); return result.toString(); } @@ -306,15 +308,46 @@ public class CoreHqlPack { return result.toString(); } + /** + * 查询字典代码是否重复 + * @param sysDictionary + * @return + */ public static String packHqlSysDictionaryCode(SysDictionary sysDictionary){ StringBuffer result = new StringBuffer(); - // and HqlPack.getStringEqualPack(sysDictionary.getDictionaryCode(),"dictionaryCode",result); - // not HqlPack.getNumNOEqualPack(sysDictionary.getId(),"id",result); return result.toString(); } + /** + * 查询语言代码是否重复 + * @param sysLocaleLanguage + * @return + */ + public static String packHqlSysLocaleLanguageCode(SysLocaleLanguage sysLocaleLanguage){ + StringBuffer result = new StringBuffer(); + + HqlPack.getStringEqualPack(sysLocaleLanguage.getLanguageCode(),"languageCode",result); + HqlPack.getNumNOEqualPack(sysLocaleLanguage.getId(),"id",result); + + return result.toString(); + } + + /** + * 检查系统资源是否重复 + * @param sysLocaleResource + * @return + */ + public static String packHqlSysLocaleResourceKey(SysLocaleResource sysLocaleResource){ + StringBuffer result = new StringBuffer(); + + HqlPack.getStringEqualPack(sysLocaleResource.getLanguageCode(),"languageCode",result); + HqlPack.getStringEqualPack(sysLocaleResource.getResourceKey(),"resourceKey",result); + HqlPack.getNumNOEqualPack(sysLocaleResource.getId(),"id",result); + + return result.toString(); + } } \ No newline at end of file