yun-zuoyi
柯裕 6 years ago
commit 171675ffb7

@ -83,7 +83,7 @@ public class AndonEnumUtil {
public enum ALARM_FLAG{
CALL(1,"10","呼叫"),
SIGN(2,"20","签到"),
SIGN(2,"20","响应"),
RESOLVE(3,"30","解决"),
CANCEL(4,"40", "撤销");

@ -132,6 +132,51 @@ public interface BaseRepository <T, ID extends Serializable> extends JpaReposito
int updateByProperties(String[] conditionName, Object[] conditionValue, String[] propertyName, Object[] propertyValue);
/**
* (eg price = price + :price)
* @param conditionName
* @param conditionValue
* @param propertyName
* @param propertyValue
*/
int updateByPropertiesWithVal(String conditionName, Object conditionValue, String propertyName, Object propertyValue);
/**
* (eg price = price + :price)
* @param conditionName
* @param conditionValue
* @param propertyName
* @param propertyValue
*/
int updateByPropertiesWithVal(String conditionName, Object conditionValue, String[] propertyName, Object[] propertyValue);
/**
* (eg price = price + :price)
* @param propertyName
* @param propertyValue
*/
int updateByPropertiesWithVal(String propertyName, Object propertyValue,DdlPackBean packBean);
int updateByPropertiesWithVal(String[] propertyName, Object[] propertyValue,DdlPackBean packBean);
/**
* (eg price = price + :price)
* @param conditionName
* @param conditionValue
* @param propertyName
* @param propertyValue
*/
int updateByPropertiesWithVal(String[] conditionName, Object[] conditionValue, String propertyName, Object propertyValue);
/**
* (eg price = price + :price)
* @param conditionName
* @param conditionValue
* @param propertyName
* @param propertyValue
*/
int updateByPropertiesWithVal(String[] conditionName, Object[] conditionValue, String[] propertyName, Object[] propertyValue);
/**
* hqlWhere
* @param hqlWhere
* @param propertyName

@ -11,10 +11,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.data.jpa.repository.support.SimpleJpaRepository;
import javax.persistence.EntityManager;
import javax.persistence.Id;
import javax.persistence.NoResultException;
import javax.persistence.Query;
import javax.persistence.*;
import java.io.Serializable;
import java.lang.reflect.Field;
import java.text.SimpleDateFormat;
@ -196,6 +193,42 @@ public class BaseRepositoryImpl<T, ID extends Serializable> extends SimpleJpaRep
@Override
public int updateByProperties(String[] conditionName, Object[] conditionValue, String[] propertyName, Object[] propertyValue) {
return updateByPropertiesMain(conditionName, conditionValue, propertyName, propertyValue,true);
}
@Override
public int updateByPropertiesWithVal(String conditionName, Object conditionValue, String propertyName, Object propertyValue) {
return updateByPropertiesWithVal(new String[] { conditionName }, new Object[] { conditionValue }, new String[] { propertyName }, new Object[] { propertyValue });
}
@Override
public int updateByPropertiesWithVal(String conditionName, Object conditionValue, String[] propertyName, Object[] propertyValue) {
return updateByPropertiesWithVal(new String[] { conditionName }, new Object[] { conditionValue }, propertyName, propertyValue);
}
@Override
public int updateByPropertiesWithVal(String[] conditionName, Object[] conditionValue, String propertyName, Object propertyValue) {
return updateByPropertiesWithVal(conditionName, conditionValue, new String[] { propertyName }, new Object[] { propertyValue });
}
@Override
public int updateByPropertiesWithVal(String[] conditionName, Object[] conditionValue, String[] propertyName, Object[] propertyValue) {
return updateByPropertiesMain(conditionName, conditionValue, propertyName, propertyValue,false);
}
/**
*
* @param conditionName
* @param conditionValue
* @param propertyName
* @param propertyValue
* @param valWithSimple
* trueeg price = :price
* falseeg price = price + :price
* @return
*/
private int updateByPropertiesMain(String[] conditionName, Object[] conditionValue,
String[] propertyName, Object[] propertyValue,boolean valWithSimple) {
if ((propertyName != null) && (propertyName.length > 0) && (propertyValue != null)
&& (propertyValue.length > 0) && (propertyName.length == propertyValue.length)
&& (conditionValue != null) && (conditionValue.length > 0)) {
@ -203,7 +236,11 @@ public class BaseRepositoryImpl<T, ID extends Serializable> extends SimpleJpaRep
sb.append("update " + persistentClass.getName() + " model set ");
for (int i = 0; i < propertyName.length; i++) {
sb.append(propertyName[i] + " = :p_" + propertyName[i] + ",");
if(valWithSimple) {
sb.append(propertyName[i] + " = :p_" + propertyName[i] + ",");
}else{
sb.append(propertyName[i] + " = " + propertyName[i] + " + :p_" + propertyName[i] + ",");
}
}
sb.deleteCharAt(sb.length() - 1);
@ -229,13 +266,32 @@ public class BaseRepositoryImpl<T, ID extends Serializable> extends SimpleJpaRep
@Override
public int updateByProperties(String[] propertyName, Object[] propertyValue,DdlPackBean packBean) {
return updateByPropertiesDdlPack(propertyName, propertyValue,packBean,true);
}
@Override
public int updateByPropertiesWithVal(String propertyName, Object propertyValue,DdlPackBean packBean) {
return updateByPropertiesWithVal(new String[] { propertyName }, new Object[] { propertyValue },packBean);
}
@Override
public int updateByPropertiesWithVal(String[] propertyName, Object[] propertyValue,DdlPackBean packBean) {
return updateByPropertiesDdlPack(propertyName, propertyValue,packBean,false);
}
private int updateByPropertiesDdlPack(String[] propertyName, Object[] propertyValue,
DdlPackBean packBean,boolean valWithSimple) {
if ((propertyName != null) && (propertyName.length > 0) && (propertyValue != null)
&& (propertyValue.length > 0) && (propertyName.length == propertyValue.length)) {
StringBuffer sb = new StringBuffer();
sb.append("update " + persistentClass.getName() + " model set ");
for (int i = 0; i < propertyName.length; i++) {
sb.append(propertyName[i] + " = :p_" + propertyName[i] + ",");
if(valWithSimple) {
sb.append(propertyName[i] + " = :p_" + propertyName[i] + ",");
}else{
sb.append(propertyName[i] + " = " + propertyName[i] + " + :p_" + propertyName[i] + ",");
}
}
sb.deleteCharAt(sb.length() - 1);
sb.append(" where 1=1 " + packBean.getWhereAppend());
@ -297,7 +353,9 @@ public class BaseRepositoryImpl<T, ID extends Serializable> extends SimpleJpaRep
@Override
public List<T> list() {
return this.findAll();
List<T> l = this.findAll();
this.flush();
return l;
}
@Override
@ -1349,7 +1407,11 @@ public class BaseRepositoryImpl<T, ID extends Serializable> extends SimpleJpaRep
if ((paramName != null) && (paramName.length > 0) && (paramValue != null) && (paramValue.length > 0)) {
StringBuffer sb = new StringBuffer("select sum(model." + sumPropertyName + ") from " + persistentClass.getName() + " model where 1=1 ");
appendQL(sb, paramName, paramValue);
sb.append(" group by model." + groupByName);
if(StringUtils.isNotBlank(groupByName)) {
sb.append(" group by model." + groupByName);
}
Query query = entityManager.createQuery(sb.toString());
setParameter(query,paramName,paramValue);
@ -1374,7 +1436,10 @@ public class BaseRepositoryImpl<T, ID extends Serializable> extends SimpleJpaRep
if ((paramName != null) && (paramName.length > 0) && (paramValue != null) && (paramValue.length > 0)) {
StringBuffer sb = new StringBuffer("select avg(model."+sumPropertyName+") from " + persistentClass.getName() + " model where 1=1 ");
appendQL(sb,paramName,paramValue);
sb.append(" group by model." + groupByName);
if(StringUtils.isNotBlank(groupByName)) {
sb.append(" group by model." + groupByName);
}
Query query = entityManager.createQuery(sb.toString());
setParameter(query,paramName,paramValue);
@ -1400,7 +1465,7 @@ public class BaseRepositoryImpl<T, ID extends Serializable> extends SimpleJpaRep
if ((paramName != null) && (paramName.length > 0) && (paramValue != null) && (paramValue.length > 0)) {
StringBuffer sb = new StringBuffer("select max(model." + sumPropertyName + ") from " + persistentClass.getName() + " model where 1=1 ");
appendQL(sb, paramName, paramValue);
if(!StringUtils.isEmpty(groupByName)){
if(StringUtils.isNotBlank(groupByName)){
sb.append(" group by model." + groupByName);
}
@ -1428,7 +1493,10 @@ public class BaseRepositoryImpl<T, ID extends Serializable> extends SimpleJpaRep
if ((paramName != null) && (paramName.length > 0) && (paramValue != null) && (paramValue.length > 0)) {
StringBuffer sb = new StringBuffer("select min(model." + sumPropertyName + ") from " + persistentClass.getName() + " model where 1=1 ");
appendQL(sb, paramName, paramValue);
sb.append(" group by model." + groupByName);
if(StringUtils.isNotBlank(groupByName)) {
sb.append(" group by model." + groupByName);
}
Query query = entityManager.createQuery(sb.toString());
setParameter(query,paramName,paramValue);

@ -0,0 +1,46 @@
package cn.estsh.i3plus.pojo.platform.bean;
import cn.estsh.i3plus.pojo.base.annotation.AnnoOutputColumn;
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;
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;
import javax.persistence.Version;
/**
* @Description :
* @Reference :
* @Author : alwaysfrin
* @CreateDate : 2019-05-14 12:51
* @Modify:
**/
@Data
@Entity
@DynamicInsert
@DynamicUpdate
@EqualsAndHashCode(callSuper = true)
@Table(name="TEST_TRANS_USER")
@Api(value="测试用户类",description = "测试事务信息")
public class TestTransUser extends BaseBean {
@Column(name="NAME")
@ApiParam(value ="名称" , access ="名称")
private String name;
@Column(name="SALARY")
@ApiParam(value ="金额" , access ="金额")
private Double salary;
/*@Version
@ApiParam(value ="版本控制" , access ="乐观锁")
private int version;*/
}

@ -0,0 +1,15 @@
package cn.estsh.i3plus.pojo.platform.repository;
import cn.estsh.i3plus.pojo.base.jpa.dao.BaseRepository;
import cn.estsh.i3plus.pojo.platform.bean.SysUserInfo;
import cn.estsh.i3plus.pojo.platform.bean.TestTransUser;
/**
* @Description :
* @Reference :
* @Author : frin
* @Date : 2019-5-14
* @Modify :
**/
public interface TestTransUserRepository extends BaseRepository<TestTransUser, Long> {
}
Loading…
Cancel
Save