diff --git a/modules/i3plus-pojo-andon/src/main/java/cn.estsh.i3plus.pojo.andon/bean/AndonPLC.java b/modules/i3plus-pojo-andon/src/main/java/cn.estsh.i3plus.pojo.andon/bean/AndonPLC.java index 9f154de..8bccd4e 100644 --- a/modules/i3plus-pojo-andon/src/main/java/cn.estsh.i3plus.pojo.andon/bean/AndonPLC.java +++ b/modules/i3plus-pojo-andon/src/main/java/cn.estsh.i3plus.pojo.andon/bean/AndonPLC.java @@ -75,4 +75,12 @@ public class AndonPLC extends BaseBean { @Column(name = "ALARM_CODE") @ApiParam(value = "安灯类型代码") private String alarmCode; + + @Column(name = "TAG_BUSINESS_TYPE") + @ApiParam(value = "标签业务类型") + private String tagBusinessType; + + @Column(name = "IS_ALARM_STATUS") + @ApiParam(value = "是否按灯状态", example = "1") + private Integer isAlarmStatus; } 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 12b3098..d0a22e1 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 @@ -1,5 +1,12 @@ package cn.estsh.i3plus.pojo.andon.sqlpack; +import cn.estsh.i3plus.pojo.andon.bean.AndonPLC; +import cn.estsh.i3plus.pojo.base.bean.BaseBean; +import cn.estsh.i3plus.pojo.base.bean.DdlPackBean; +import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; +import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack; +import org.apache.commons.lang3.StringUtils; + /** * @Description : 安灯对象查询封装 * @Reference : @@ -8,4 +15,47 @@ package cn.estsh.i3plus.pojo.andon.sqlpack; * @Modify: **/ public class AndonHqlPack { + /** + * 封装公用查询参数 + * + * @param bean 实体对象 + * @param hqlStr 查询语句 + * @return 封装完成的查询语句 + */ + public static DdlPackBean getStringBuilderPack(BaseBean bean, DdlPackBean hqlStr) { + + // 判断工厂代码是否为空 + if (StringUtils.isNotBlank(bean.getOrganizeCode())) { + DdlPreparedPack.getStringEqualPack(bean.getOrganizeCode(), "organizeCode", hqlStr); + } + + // 封装有效状态和删除状态 + DdlPreparedPack.getNumEqualPack(bean.getIsValid(), "isValid", hqlStr); + DdlPreparedPack.getNumEqualPack(CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue(), "isDeleted", hqlStr); + + return hqlStr; + } + + /** + * 按灯PLC查询条件 + * + * @param andonPLC plc实体 + * @return + */ + public static DdlPackBean packHqlAndonPLCInfo(AndonPLC andonPLC) { + DdlPackBean result = new DdlPackBean(); + + //查询参数封装 + DdlPreparedPack.getStringEqualPack(andonPLC.getWorkCellCode(), "workCenterCode", result); + DdlPreparedPack.getStringEqualPack(andonPLC.getWorkCellCode(), "workCellCode", result); + DdlPreparedPack.getStringEqualPack(andonPLC.getNodeIP(), "nodeIP", result); + DdlPreparedPack.getStringEqualPack(andonPLC.getChannelName(), "channelName", result); + DdlPreparedPack.getStringEqualPack(andonPLC.getTagName(), "tagName", result); + DdlPreparedPack.getStringEqualPack(andonPLC.getTagAddress(), "tagAddress", result); + DdlPreparedPack.getStringEqualPack(andonPLC.getTagType(), "tagType", result); + DdlPreparedPack.getStringEqualPack(andonPLC.getAlarmCode(), "alarmCode", result); + + getStringBuilderPack(andonPLC, result); + return 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 new file mode 100644 index 0000000..1f6e33a --- /dev/null +++ b/modules/i3plus-pojo-base/src/main/java/cn/estsh/i3plus/pojo/base/enumutil/AndonEnumUtil.java @@ -0,0 +1,49 @@ +package cn.estsh.i3plus.pojo.base.enumutil; + +import com.fasterxml.jackson.annotation.JsonFormat; + +/** + * @Description : + * @Reference : + * @Author : silliter + * @CreateDate : 2019-05-13 15:53 + * @Modify: + **/ +public class AndonEnumUtil { + /** + * 按灯状态 + * 10-是,20-否 + */ + @JsonFormat(shape = JsonFormat.Shape.OBJECT) + public enum IS_ALARM_STATUS{ + + YES(10,"需要按灯"), + ON(20,"不需要按灯"); + + private int value; + private String description; + + IS_ALARM_STATUS(int value, String description) { + this.value = value; + this.description = description; + } + + public int getValue() { + return value; + } + + public String getDescription() { + return description; + } + + public static String valueOfDescription(int val) { + String tmp = null; + for (int i = 0; i < values().length; i++) { + if (values()[i].value == val) { + tmp = values()[i].description; + } + } + return tmp; + } + } +} diff --git a/modules/i3plus-pojo-model/src/main/java/cn/estsh/i3plus/pojo/model/andon/AndonOpcModel.java b/modules/i3plus-pojo-model/src/main/java/cn/estsh/i3plus/pojo/model/andon/AndonOpcModel.java new file mode 100644 index 0000000..94ef1a2 --- /dev/null +++ b/modules/i3plus-pojo-model/src/main/java/cn/estsh/i3plus/pojo/model/andon/AndonOpcModel.java @@ -0,0 +1,32 @@ +package cn.estsh.i3plus.pojo.model.andon; + +import io.swagger.annotations.ApiParam; +import lombok.Data; + +@Data +public class AndonOpcModel { + + /** + * 通常为localhost + */ + @ApiParam("opcserver地址-ip") + private String host; + + /** + * opcserver的名称 + */ + @ApiParam("opcserver名称") + private String serverProgId; + + /** + * 一般为channel + */ + @ApiParam("第一层路径") + private String accessPath; + + /** + * 一般为device.tag + */ + @ApiParam("剩余路径名称") + private String itemName; +}