diff --git a/modules/i3plus-pojo-andon/src/main/java/cn.estsh.i3plus.pojo.andon/bean/AndonManageQueue.java b/modules/i3plus-pojo-andon/src/main/java/cn.estsh.i3plus.pojo.andon/bean/AndonManageQueue.java index 64780b0..26f776b 100644 --- a/modules/i3plus-pojo-andon/src/main/java/cn.estsh.i3plus.pojo.andon/bean/AndonManageQueue.java +++ b/modules/i3plus-pojo-andon/src/main/java/cn.estsh.i3plus.pojo.andon/bean/AndonManageQueue.java @@ -11,6 +11,7 @@ import org.hibernate.annotations.DynamicInsert; import org.hibernate.annotations.DynamicUpdate; import javax.persistence.*; +import java.util.List; /** * @Description : 安灯队列 @@ -236,6 +237,10 @@ public class AndonManageQueue extends BaseBean { private Long avgResolveTime; @Transient + @ApiParam(value = "查询条件:ANDON状态") + private List statusList; + + @Transient @ApiParam(value = "比例", example = "0") private Double proportion; diff --git a/modules/i3plus-pojo-andon/src/main/java/cn.estsh.i3plus.pojo.andon/sqlpack/AndonHqlPack.java b/modules/i3plus-pojo-andon/src/main/java/cn.estsh.i3plus.pojo.andon/sqlpack/AndonHqlPack.java index f8b6377..6eca0eb 100644 --- a/modules/i3plus-pojo-andon/src/main/java/cn.estsh.i3plus.pojo.andon/sqlpack/AndonHqlPack.java +++ b/modules/i3plus-pojo-andon/src/main/java/cn.estsh.i3plus.pojo.andon/sqlpack/AndonHqlPack.java @@ -172,6 +172,7 @@ public class AndonHqlPack { DdlPreparedPack.getStringEqualPack(andonManageQueue.getEquipmentCode(), "equipmentCode", result); DdlPreparedPack.getStringEqualPack(andonManageQueue.getAlarmCode(), "alarmCode", result); DdlPreparedPack.getStringEqualPack(andonManageQueue.getActionCode(), "actionCode", result); + DdlPreparedPack.getStringEqualPack(andonManageQueue.getAndonOrderNo(), "andonOrderNo", result); DdlPreparedPack.getInPackArray(obj, "statusCode", result); getStringBuilderPack(andonManageQueue, result); diff --git a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/AndonEnumUtil.java b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/AndonEnumUtil.java index 3ceadb1..ec7d5c4 100644 --- a/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/AndonEnumUtil.java +++ b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/AndonEnumUtil.java @@ -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", "撤销"); 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 4c07060..c131da7 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 @@ -132,6 +132,51 @@ public interface BaseRepository 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 修改的字段名称 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 ae2aecf..04141fd 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 @@ -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 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 是否简单赋值 + * true为正常eg: price = :price + * false为自身添加eg: 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 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 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 extends SimpleJpaRep @Override public List list() { - return this.findAll(); + List l = this.findAll(); + this.flush(); + return l; } @Override @@ -1349,7 +1407,11 @@ public class BaseRepositoryImpl 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 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 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 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); diff --git a/modules/i3plus-pojo-mes-pcn/src/main/java/cn/estsh/i3plus/pojo/mes/pcn/bean/MesPLCConfigure.java b/modules/i3plus-pojo-mes-pcn/src/main/java/cn/estsh/i3plus/pojo/mes/pcn/bean/MesPLCConfigure.java new file mode 100644 index 0000000..548db37 --- /dev/null +++ b/modules/i3plus-pojo-mes-pcn/src/main/java/cn/estsh/i3plus/pojo/mes/pcn/bean/MesPLCConfigure.java @@ -0,0 +1,55 @@ +package cn.estsh.i3plus.pojo.mes.pcn.bean; + + +import cn.estsh.i3plus.pojo.base.bean.BaseBean; +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 :PLC设备信息配置表 + * @Reference : + * @Author : Crish + * @CreateDate : 2019-05-17 + * @Modify: + **/ +@Data +@Entity +@DynamicInsert +@DynamicUpdate +@EqualsAndHashCode(callSuper = true) +@Table(name="MES_PLC_CONFIGURE") +@Api("PLC设备信息配置表") +public class MesPLCConfigure extends BaseBean { + @Column(name="IP") + @ApiParam("设备ip") + private String ipAddress; + + @Column(name="DEVICE_NAME") + @ApiParam("设备地址") + private String deviceName; + + @Column(name="TAG_NAME") + @ApiParam("标签地址") + private String tagName; + + @Column(name="AREA_CODE") + @ApiParam("区域代码") + private String areaCode; + + @Column(name="WORK_CELL_CODE") + @ApiParam("工作单元") + private String workCellCode; + + @Column(name="WORK_CENTER_CODE") + @ApiParam("工作中心") + private String workCenterCode; + +} diff --git a/modules/i3plus-pojo-mes-pcn/src/main/java/cn/estsh/i3plus/pojo/mes/pcn/bean/MesTorqueDetail.java b/modules/i3plus-pojo-mes-pcn/src/main/java/cn/estsh/i3plus/pojo/mes/pcn/bean/MesTorqueDetail.java new file mode 100644 index 0000000..f99cd7f --- /dev/null +++ b/modules/i3plus-pojo-mes-pcn/src/main/java/cn/estsh/i3plus/pojo/mes/pcn/bean/MesTorqueDetail.java @@ -0,0 +1,82 @@ +package cn.estsh.i3plus.pojo.mes.pcn.bean; + + +import cn.estsh.i3plus.pojo.base.bean.BaseBean; +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 : Crish + * @CreateDate : 2019-05-17 + * @Modify: + **/ +@Data +@Entity +@DynamicInsert +@DynamicUpdate +@EqualsAndHashCode(callSuper = true) +@Table(name="MES_TORQUE_DETAIL") +@Api("扭矩信息记录表") +public class MesTorqueDetail extends BaseBean { + @Column(name="SN") + @ApiParam("过程条码") + private String serialNumber; + + @Column(name="UPPER_LIMIT") + @ApiParam("最大值") + private Double upperLimit; + + @Column(name="LOWER_LIMIT") + @ApiParam("最小值") + private Double lowerLimit; + + @Column(name="TORQUE_DETAIL_VALUE") + @ApiParam("扭矩值") + private Double torqueValue; + + @Column(name="WORK_CELL_CODE") + @ApiParam("工作单元") + private String workCellCode; + + @Column(name="WORK_CENTER_CODE") + @ApiParam("工作中心") + private String workCenterCode; + + @Column(name="AREA_CODE") + @ApiParam("区域代码") + private String areaCode; + + @Column(name="ok") + @ApiParam("扭矩是否合格") + private String ok; + + @Column(name="PART_NO") + @ApiParam("扭矩是否合格") + private String partNO; + + @Column(name="p_set") + @ApiParam("螺丝枪PSET设置值") + private String deviceSetValue; + + @Column(name="MAXANGLE") + @ApiParam("最大扭矩") + private String maxAngle; + + @Column(name="MINANGLE") + @ApiParam("最小扭矩") + private String minAngel; + + @Column(name="FINALANGLE") + @ApiParam("最终扭矩") + private Integer finalAngle; +} diff --git a/modules/i3plus-pojo-mes-pcn/src/main/java/cn/estsh/i3plus/pojo/mes/pcn/repository/MesPLCConfigureRepository.java b/modules/i3plus-pojo-mes-pcn/src/main/java/cn/estsh/i3plus/pojo/mes/pcn/repository/MesPLCConfigureRepository.java new file mode 100644 index 0000000..cce563e --- /dev/null +++ b/modules/i3plus-pojo-mes-pcn/src/main/java/cn/estsh/i3plus/pojo/mes/pcn/repository/MesPLCConfigureRepository.java @@ -0,0 +1,16 @@ +package cn.estsh.i3plus.pojo.mes.pcn.repository; + +import cn.estsh.i3plus.pojo.base.jpa.dao.BaseRepository; +import cn.estsh.i3plus.pojo.mes.pcn.bean.MesArea; +import org.springframework.stereotype.Repository; + +/** + * @Description : + * @Reference : + * @Author : jack.jia + * @CreateDate : 2019-04-02 + * @Modify: + **/ +@Repository +public interface MesPLCConfigureRepository extends BaseRepository { +} diff --git a/modules/i3plus-pojo-mes-pcn/src/main/java/cn/estsh/i3plus/pojo/mes/pcn/repository/MesTorqueDetailRepository.java b/modules/i3plus-pojo-mes-pcn/src/main/java/cn/estsh/i3plus/pojo/mes/pcn/repository/MesTorqueDetailRepository.java new file mode 100644 index 0000000..d2be5f1 --- /dev/null +++ b/modules/i3plus-pojo-mes-pcn/src/main/java/cn/estsh/i3plus/pojo/mes/pcn/repository/MesTorqueDetailRepository.java @@ -0,0 +1,17 @@ +package cn.estsh.i3plus.pojo.mes.pcn.repository; + +import cn.estsh.i3plus.pojo.base.jpa.dao.BaseRepository; +import cn.estsh.i3plus.pojo.mes.pcn.bean.MesArea; +import cn.estsh.i3plus.pojo.mes.pcn.bean.MesTorqueDetail; +import org.springframework.stereotype.Repository; + +/** + * @Description : + * @Reference : + * @Author : jack.jia + * @CreateDate : 2019-04-02 + * @Modify: + **/ +@Repository +public interface MesTorqueDetailRepository extends BaseRepository { +} diff --git a/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/bean/TestTransUser.java b/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/bean/TestTransUser.java new file mode 100644 index 0000000..7f5be42 --- /dev/null +++ b/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/bean/TestTransUser.java @@ -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;*/ +} diff --git a/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/repository/TestTransUserRepository.java b/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/repository/TestTransUserRepository.java new file mode 100644 index 0000000..2221006 --- /dev/null +++ b/modules/i3plus-pojo-platform/src/main/java/cn/estsh/i3plus/pojo/platform/repository/TestTransUserRepository.java @@ -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 { +}