andon广播音量可配置, 安灯通知记录

yun-zuoyi
crish 6 years ago
parent ee51d54030
commit a30f4aae83

@ -0,0 +1,77 @@
package cn.estsh.i3plus.pojo.andon.bean;
import cn.estsh.i3plus.pojo.base.annotation.AnnoOutputColumn;
import cn.estsh.i3plus.pojo.base.bean.BaseBean;
import cn.estsh.i3plus.pojo.base.enumutil.AndonEnumUtil;
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.Transient;
/**
* @Description:
* @Reference:
* @Author: Crish
* @CreateDate:2019-11-11-14:23
* @Modify:
**/
@Data
@Entity
@Table(name="ANDON_MESSAGE_RECORD")
@DynamicInsert
@DynamicUpdate
@EqualsAndHashCode(callSuper = true)
@Api("通知记录")
public class AndonMessageRecord extends BaseBean {
@Column(name = "ANDON_ORDER_NO")
@ApiParam(value = "安灯队列编号")
private String andonOrderNo;
@Column(name = "ALARM_CODE")
@AnnoOutputColumn(refClass = AndonEnumUtil.ALARM_TYPE.class,refForeignKey = "value",value = "description")
@ApiParam(value = "安灯类型")
private String alarmCode;
@Column(name = "STATUS_CODE")
@AnnoOutputColumn(refClass = AndonEnumUtil.ANDON_ACTION_TAG.class,refForeignKey = "code",value = "description")
@ApiParam(value = "安灯状态代码")
private String statusCode;
@Column(name = "RP_OBJECT_CODE")
@ApiParam(value = "通知对象代码")
private String rpObjectCode;
@Transient
@ApiParam(value = "通知对象名称")
private String rpObjectName;
@Column(name = "RP_CODE")
@AnnoOutputColumn(refClass = AndonEnumUtil.NOTICE_MESSAGE_SEND_TYPE.class,refForeignKey = "value",value = "description")
@ApiParam(value = "通知方式")
private String rpCode;
@Column(name = "RP_NAME")
@AnnoOutputColumn(refClass = AndonEnumUtil.NOTICE_MESSAGE_SEND_TYPE.class,refForeignKey = "value",value = "description")
@ApiParam(value = "通知方式名称")
private String rpName;
@Column(name = "RP_LEVEL")
@ApiParam(value = "通知等级")
private String rpLevel;
@Column(name = "IS_SUCCEED")
@ApiParam(value = "成功标识")
private String isSucceed;
@Column(name = "MEMO")
@ApiParam(value = "备注")
private String memo;
}

@ -0,0 +1,46 @@
package cn.estsh.i3plus.pojo.andon.bean;
import cn.estsh.i3plus.pojo.base.annotation.AnnoOutputColumn;
import cn.estsh.i3plus.pojo.base.bean.BaseBean;
import cn.estsh.i3plus.pojo.base.enumutil.AndonEnumUtil;
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-11-11-14:23
* @Modify:
**/
@Data
@Entity
@Table(name="ANDON_RESPONSE")
@DynamicInsert
@DynamicUpdate
@EqualsAndHashCode(callSuper = true)
@Api("通知方式")
public class AndonResponse extends BaseBean {
@Column(name = "RESPONSE_CODE")
@AnnoOutputColumn(refClass = AndonEnumUtil.NOTICE_MESSAGE_SEND_TYPE.class,refForeignKey = "value",value = "description")
@ApiParam(value = "通知方式")
private String responseCode;
@Column(name = "RESPONSE_NAME")
@AnnoOutputColumn(refClass = AndonEnumUtil.NOTICE_MESSAGE_SEND_TYPE.class,refForeignKey = "value",value = "description")
@ApiParam(value = "通知名称")
private String responseName;
@Column(name = "RESPONSE_CONTENT")
@ApiParam(value = "通知内容")
private String responseContent;
}

@ -0,0 +1,16 @@
package cn.estsh.i3plus.pojo.andon.repository;
import cn.estsh.i3plus.pojo.andon.bean.AndonMessageRecord;
import cn.estsh.i3plus.pojo.base.jpa.dao.BaseRepository;
import org.springframework.stereotype.Repository;
/**
* @Description:
* @Reference:
* @Author: Crish
* @CreateDate:2019-11-12-14:24
* @Modify:
**/
@Repository
public interface IAndonMessageRecordRepository extends BaseRepository<AndonMessageRecord, Long> {
}

@ -0,0 +1,16 @@
package cn.estsh.i3plus.pojo.andon.repository;
import cn.estsh.i3plus.pojo.andon.bean.AndonResponse;
import cn.estsh.i3plus.pojo.base.jpa.dao.BaseRepository;
import org.springframework.stereotype.Repository;
/**
* @Description:
* @Reference:
* @Author: Crish
* @CreateDate:2019-11-11-15:12
* @Modify:
**/
@Repository
public interface IAndonResponseRepository extends BaseRepository<AndonResponse, Long> {
}

@ -20,7 +20,38 @@ import org.apache.commons.lang3.StringUtils;
* @Modify: * @Modify:
**/ **/
public class AndonHqlPack { public class AndonHqlPack {
/***************** crish 工作单元呼叫原因配置, 处理方法配置, 处理事件原因配置, 事件现象配置 Start ***********/
/**
*
* @param andonResponse
* @return
*/
public static DdlPackBean getAndonResponse(AndonResponse andonResponse) {
DdlPackBean packBean = DdlPackBean.getDdlPackBean();
DdlPreparedPack.getStringEqualPack(andonResponse.getOrganizeCode(), "organizeCode", packBean);
DdlPreparedPack.getStringEqualPack(andonResponse.getResponseCode(), "responseCode", packBean);
return packBean;
}
/**
*
* @param andonMessageRecord
* @return
*/
public static DdlPackBean getAndonMessageRecord(AndonMessageRecord andonMessageRecord) {
DdlPackBean packBean = DdlPackBean.getDdlPackBean();
DdlPreparedPack.getStringEqualPack(andonMessageRecord.getOrganizeCode(), "organizeCode", packBean);
DdlPreparedPack.getStringEqualPack(andonMessageRecord.getAlarmCode(), "alarmCode", packBean);
DdlPreparedPack.getStringEqualPack(andonMessageRecord.getAndonOrderNo(), "andonOrderNo", packBean);
DdlPreparedPack.getStringEqualPack(andonMessageRecord.getRpCode(), "rpCode", packBean);
DdlPreparedPack.getStringEqualPack(andonMessageRecord.getRpObjectCode(), "rpObjectCode", packBean);
DdlPreparedPack.getStringEqualPack(andonMessageRecord.getStatusCode(), "statusCode", packBean);
if(StringUtils.isNotBlank(andonMessageRecord.getCreateDateTimeStart()) || StringUtils.isNotBlank(andonMessageRecord.getCreateDateTimeEnd())){
DdlPreparedPack.timeBuilder(andonMessageRecord.getCreateDateTimeStart(), andonMessageRecord.getCreateDateTimeEnd(), "createDatetime", packBean, true);
}
return packBean;
}
/** /**
* *
* @param andonCellAlarmCause * @param andonCellAlarmCause
@ -137,7 +168,6 @@ public class AndonHqlPack {
DdlPreparedPack.getNumEqualPack(andonQueueAttach.getIsValid(),"isValid",packBean); DdlPreparedPack.getNumEqualPack(andonQueueAttach.getIsValid(),"isValid",packBean);
return packBean; return packBean;
} }
/***************** crish 工作单元呼叫原因配置, 处理方法配置, 处理事件原因配置, 事件现象配置 End ************/
/** /**

@ -12,8 +12,78 @@ import org.apache.commons.lang3.StringUtils;
**/ **/
public class AndonEnumUtil { public class AndonEnumUtil {
/** /**
*
*
*/
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum ANDON_SUCCESS_FLAG{
SUCCESS(1, "1","成功"),
FAIL(2, "2","失败");
private int value;
private String code;
private String description;
ANDON_SUCCESS_FLAG(int value, String code, String description) {
this.value = value;
this.code = code;
this.description = description;
}
public int getValue() {
return value;
}
public String getCode(){ return code; }
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;
}
public static String codeOfDescription(String val) {
String tmp = null;
for (int i = 0; i < values().length; i++) {
if (StringUtils.equalsIgnoreCase(values()[i].code, val)) {
tmp = values()[i].description;
}
}
return tmp;
}
public static int descriptionOfValue(String val) {
int tmp = -1;
for (int i = 0; i < values().length; i++) {
if (StringUtils.equalsIgnoreCase(values()[i].description, val)) {
tmp = values()[i].value;
}
}
return tmp;
}
public static String descriptionOfCode(String val) {
String tmp = "";
for (int i = 0; i < values().length; i++) {
if (StringUtils.equalsIgnoreCase(values()[i].description, val)) {
tmp = values()[i].code;
}
}
return tmp;
}
}
/**
* *
* 10 - 20 - 30 - *
*/ */
@JsonFormat(shape = JsonFormat.Shape.OBJECT) @JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum NOTICE_OVER_TIME_FLAG{ public enum NOTICE_OVER_TIME_FLAG{
@ -62,9 +132,17 @@ public class AndonEnumUtil {
*/ */
@JsonFormat(shape = JsonFormat.Shape.OBJECT) @JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum BROADCAST_CUSTOM_CONDITION { public enum BROADCAST_CUSTOM_CONDITION {
CALL("{A}","workCenterCode","产线"), LINE("{A}","workCenterCode","产线代码"),
SIGN("{B}","workCellCode","工位"), LINE_NAME("{B}","workCenterName","产线名称"),
RESOLVE("{C}","alarmCode","安灯类型"); CELL("{C}","workCellCode","工位代码"),
CELL_NAME("{D}","workCellName","工位名称"),
ALARM_CODE("{E}","alarmCode","安灯类型代码"),
ALARM_NAME("{F}","alarmName","安灯类型名称"),
CALL_USER("{G}","callUser","呼叫人名称"),
ALARM_DETAIL("{H}","alarmDetailCode","安灯子类型"),
ALARM_DETAIL_NAME("{L}","alarmDetailNameRdd","安灯子类型名称"),
AC_CODE("{J}","acCode","事件描述代码"),
AC_NAME("{K}","acNameRdd","事件描述名称");
private String value; private String value;
private String code; private String code;

Loading…
Cancel
Save