Merge remote-tracking branch 'origin/test' into test

yun-zuoyi
钮海涛 5 years ago
commit 93dd90363e

@ -85,10 +85,6 @@ public class AndonRouteStatus extends BaseBean implements Serializable {
private Long alarmRouteId;
@Transient
@ApiParam("状态机异常时默认不缓存")
private boolean cacheFlag = false;
@Transient
@ApiParam("当前状态点的触发组件集默认未执行")
private boolean actionAmgIdFalg = false;
@ -100,12 +96,4 @@ public class AndonRouteStatus extends BaseBean implements Serializable {
@ApiParam("每个组件执行完成根据业务设置下个触发事件如果需要外部告知下个触发事件则设置null一个组件集执行完毕后将这个值赋给CommonMsgModel的triggerEvent")
private String nextTriggerEvent;
@Transient
@ApiParam("在一个组件集中默认继续执行下一个组件当组件集中一个组件执行失败或者根据业务需要跳出去进去下个状态点则设置未false(即这个组件集中剩余的组件停止执行),同时配置下个状态点的触发事件nextTriggerEvent")
private boolean execNextModuleFlag = true;
@Transient
@ApiParam("默认异常未处理业务异常抛出后如果需要缓存则设置cacheFlag为true因为会被catch捕获所以这里需要设置为true避免异常重复被处理")
private boolean doErrorFlag = false;
}

@ -1,6 +1,5 @@
package cn.estsh.i3plus.pojo.andon.bean;
import cn.estsh.i3plus.pojo.base.bean.BaseBean;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiParam;
@ -17,7 +16,6 @@ import java.io.Serializable;
* @date 2020/2/12 17:41
* @desc
*/
@Data
@Entity
@DynamicInsert
@ -42,7 +40,7 @@ public class AndonRouteStatusErrorRecord extends BaseBean implements Serializabl
public String andonOrderNo;
@Column(name = "ERROR_DESC")
@ApiParam(value = "失败描述")
@ApiParam(value = "异常描述")
public String errorDesc;
@Column(name = "WORK_CENTER_CODE")
@ -61,18 +59,10 @@ public class AndonRouteStatusErrorRecord extends BaseBean implements Serializabl
@ApiParam(value = "安灯来源类型")
private String sourceType;
@Column(name = "CACHE_FLAG")
@ApiParam(value = "缓存标识")
private Integer cacheFlag;
@Column(name = "CACHE_KEY")
@ApiParam(value = "缓存KEY")
private String cacheKey;
@Column(name = "HANDLE_TYPE")
@ApiParam(value = "处理方式")
private Integer handleType;
@Column(name = "HANDLE_STATUS")
@ApiParam(value = "处理状态")
private Integer handleStatus;

@ -42,9 +42,6 @@ public class CommonMsgModel implements Serializable {
@ApiModelProperty("触发事件")
private String triggerEvent;
@ApiModelProperty("缓存KEY")
private String cacheKey;
@ApiModelProperty("默认非异常内部处理,内部异常处理是设置为true")
private boolean errorInnerAction = false;

@ -1,46 +1,6 @@
package cn.estsh.i3plus.pojo.andon.sqlpack;
import cn.estsh.i3plus.pojo.andon.bean.AndonActionModule;
import cn.estsh.i3plus.pojo.andon.bean.AndonActionModuleParam;
import cn.estsh.i3plus.pojo.andon.bean.AndonActionRoute;
import cn.estsh.i3plus.pojo.andon.bean.AndonActor;
import cn.estsh.i3plus.pojo.andon.bean.AndonActorRule;
import cn.estsh.i3plus.pojo.andon.bean.AndonAlarmCause;
import cn.estsh.i3plus.pojo.andon.bean.AndonAlarmDetailType;
import cn.estsh.i3plus.pojo.andon.bean.AndonAlarmResponseCfg;
import cn.estsh.i3plus.pojo.andon.bean.AndonAlarmRoute;
import cn.estsh.i3plus.pojo.andon.bean.AndonAlarmType;
import cn.estsh.i3plus.pojo.andon.bean.AndonBroadCast;
import cn.estsh.i3plus.pojo.andon.bean.AndonBroadCastCfg;
import cn.estsh.i3plus.pojo.andon.bean.AndonCellAlarmCause;
import cn.estsh.i3plus.pojo.andon.bean.AndonCellEventCause;
import cn.estsh.i3plus.pojo.andon.bean.AndonCellEventMethod;
import cn.estsh.i3plus.pojo.andon.bean.AndonCellEventPhenomenon;
import cn.estsh.i3plus.pojo.andon.bean.AndonCellGroupCfg;
import cn.estsh.i3plus.pojo.andon.bean.AndonConfig;
import cn.estsh.i3plus.pojo.andon.bean.AndonDisposalCfg;
import cn.estsh.i3plus.pojo.andon.bean.AndonDisposalMaintenCfg;
import cn.estsh.i3plus.pojo.andon.bean.AndonEventCause;
import cn.estsh.i3plus.pojo.andon.bean.AndonEventMethod;
import cn.estsh.i3plus.pojo.andon.bean.AndonEventPhenoMenon;
import cn.estsh.i3plus.pojo.andon.bean.AndonHaltCfg;
import cn.estsh.i3plus.pojo.andon.bean.AndonHaltType;
import cn.estsh.i3plus.pojo.andon.bean.AndonKnowledgeBase;
import cn.estsh.i3plus.pojo.andon.bean.AndonManageQueue;
import cn.estsh.i3plus.pojo.andon.bean.AndonManageRecord;
import cn.estsh.i3plus.pojo.andon.bean.AndonMessageRecord;
import cn.estsh.i3plus.pojo.andon.bean.AndonMessageType;
import cn.estsh.i3plus.pojo.andon.bean.AndonPLC;
import cn.estsh.i3plus.pojo.andon.bean.AndonQueueAttach;
import cn.estsh.i3plus.pojo.andon.bean.AndonResponse;
import cn.estsh.i3plus.pojo.andon.bean.AndonResponseObject;
import cn.estsh.i3plus.pojo.andon.bean.AndonRiteRoute;
import cn.estsh.i3plus.pojo.andon.bean.AndonRiteRouteDetail;
import cn.estsh.i3plus.pojo.andon.bean.MesArea;
import cn.estsh.i3plus.pojo.andon.bean.MesEquipment;
import cn.estsh.i3plus.pojo.andon.bean.MesShift;
import cn.estsh.i3plus.pojo.andon.bean.MesWorkCell;
import cn.estsh.i3plus.pojo.andon.bean.MesWorkCenter;
import cn.estsh.i3plus.pojo.andon.bean.*;
import cn.estsh.i3plus.pojo.base.bean.BaseBean;
import cn.estsh.i3plus.pojo.base.bean.DdlPackBean;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
@ -1086,6 +1046,12 @@ public class AndonHqlPack {
return packBean;
}
/**
*
* @param actionRoute
* @param organizeCode
* @return
*/
public static DdlPackBean packHqlAndonActionRoute(AndonActionRoute actionRoute, String organizeCode) {
DdlPackBean packBean = getAllBaseDataByNormalPro(actionRoute, organizeCode);
DdlPreparedPack.getStringLikerPack(actionRoute.getRouteCode(), "routeCode", packBean);
@ -1094,6 +1060,12 @@ public class AndonHqlPack {
return packBean;
}
/**
*
* @param alarmRoute
* @param organizeCode
* @return
*/
public static DdlPackBean packHqlAndonAlarmRoute(AndonAlarmRoute alarmRoute, String organizeCode) {
DdlPackBean packBean = getAllBaseDataByNormalPro(alarmRoute, organizeCode);
DdlPreparedPack.getStringLikerPack(alarmRoute.getRouteCode(), "routeCode", packBean);
@ -1101,4 +1073,21 @@ public class AndonHqlPack {
DdlPreparedPack.getNumEqualPack(alarmRoute.getRouteType(), "routeType", packBean);
return packBean;
}
/**
*
* @param routeStatusErrorRecord
* @param organizeCode
* @return
*/
public static DdlPackBean getAndonRouteStatusErrorRecord(AndonRouteStatusErrorRecord routeStatusErrorRecord, String organizeCode) {
DdlPackBean packBean = getAllBaseDataByNormalPro(routeStatusErrorRecord, organizeCode);
DdlPreparedPack.getStringLikerPack(routeStatusErrorRecord.getRouteCode(), "routeCode", packBean);
DdlPreparedPack.getStringLikerPack(routeStatusErrorRecord.getStatusCode(), "statusCode", packBean);
DdlPreparedPack.getStringLikerPack(routeStatusErrorRecord.getAndonOrderNo(), "andonOrderNo", packBean);
DdlPreparedPack.getStringEqualPack(routeStatusErrorRecord.getAlarmCode(), "alarmCode", packBean);
DdlPreparedPack.getStringEqualPack(routeStatusErrorRecord.getSourceType(), "sourceType", packBean);
DdlPreparedPack.getNumEqualPack(routeStatusErrorRecord.getHandleStatus(), "handleStatus", packBean);
return packBean;
}
}

@ -16,6 +16,7 @@ import org.hibernate.annotations.DynamicUpdate;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import javax.persistence.Transient;
import java.lang.reflect.Method;
import java.sql.JDBCType;
@ -122,11 +123,15 @@ public class FieldInfo extends BaseAPS {
private Boolean notEmpty;
@JsonIgnore
@Transient
private transient Class<? extends BaseBean> clazz;
@JsonIgnore
@Transient
private transient Class<?> typeClass;
@JsonIgnore
@Transient
private transient Method getMethod;
@JsonIgnore
@Transient
private transient Method setMethod;
}

@ -76,9 +76,9 @@ public class DdlPackBean {
public static DdlPackBean getDdlPackBean(String organizeCode, int isValid){
DdlPackBean result = new DdlPackBean();
DdlPreparedPack.getNumEqualPack(CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue(),"isDeleted",result);
DdlPreparedPack.getNumEqualPack(isValid,"isValid",result);
DdlPreparedPack.getStringEqualPack(organizeCode,"organizeCode",result);
DdlPreparedPack.getNumEqualPack(CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue(), "isDeleted", result);
DdlPreparedPack.getNumEqualPack(isValid, "isValid", result);
DdlPreparedPack.getStringEqualPack(organizeCode, "organizeCode", result);
return result;
}

@ -0,0 +1,66 @@
package cn.estsh.i3plus.pojo.base.bean;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @Description :
* @Reference :
* @Author : yunhao
* @CreateDate : 2020-06-01 20:33
* @Modify:
**/
@Data
@ApiModel("文件基础信息")
public class ImppFile {
/******* 文件基础信息 ******/
@ApiModelProperty("文件名称")
private String name; //文件名
@ApiModelProperty("文件内容")
private byte[] content; //内容
@ApiModelProperty("文件后缀名称")
private String ext; //文件类型
public void setExt(String ext) {
if(ext.indexOf(".") != 0){
ext ="."+ext;
}
this.ext = ext;
}
@ApiModelProperty("文件md5")
private String md5;
@ApiModelProperty("文件创建时间")
private String createDateTime;
@ApiModelProperty("文件作者")
private String author; //作者
/******* 文件系统唯一信息 ******/
@ApiModelProperty("文件系统-组名称")
private String dfsGroupName;
@ApiModelProperty("文件系统-名称")
private String dfsFileName;
@ApiModelProperty("文件系统-唯一键")
private String dfsFileKey;
/******* 构造方法 ******/
public ImppFile() {
}
public ImppFile(String name, byte[] content, String ext) {
this.name = name;
this.content = content;
this.setExt(ext);
}
}

@ -13,32 +13,6 @@ import org.apache.commons.lang3.StringUtils;
public class AndonEnumUtil {
/**
*
*/
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum ROUTE_STATUS_ERROR_RECORD_HANDLE_TYPE {
INNER(10, "内部处理"),
OUTER(20, "外部处理"),
REVIEW(30, "人工确认");
private int value;
private String description;
ROUTE_STATUS_ERROR_RECORD_HANDLE_TYPE(int value, String description) {
this.value = value;
this.description = description;
}
public int getValue() {
return value;
}
public String getDescription() {
return description;
}
}
/**
*
*/
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
@ -64,32 +38,6 @@ public class AndonEnumUtil {
}
/**
*
*/
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum ROUTE_STATUS_ERROR_RECORD_CACHE_FLAG {
FALSE(10, "否"),
TRUE(20, "是"),
ORIGINAL(30, "原先");
private int value;
private String description;
ROUTE_STATUS_ERROR_RECORD_CACHE_FLAG(int value, String description) {
this.value = value;
this.description = description;
}
public int getValue() {
return value;
}
public String getDescription() {
return description;
}
}
/**
*
*/
@JsonFormat(shape = JsonFormat.Shape.OBJECT)

@ -59,6 +59,7 @@ public class CommonEnumUtil {
/** 平台服务 */
CORE(2, 8100, 4, 101000000L, "i3core", "i3业务平台"),
MDM(29, 8150, 22, 0, "i3mdm", "数据中心MDM"),
/** 调试服务 */
DEV(9999, 0000, 0, 120000000L, "Development", "系统调试");

@ -0,0 +1,165 @@
package cn.estsh.i3plus.pojo.base.enumutil;
import com.fasterxml.jackson.annotation.JsonFormat;
/**
* @Description : Model Pojo
* @Reference :
* @Author : Adair Peng
* @CreateDate : 2018-11-21 15:50
* @Modify:
**/
public class MdmEnumUtil {
/**
*
*/
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum MDM_OPERATE_TYPE {
INSERT(1, "新增"),
UPDATE(2, "修改");
private int value;
private String description;
private MDM_OPERATE_TYPE(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;
}
public static MdmEnumUtil.MDM_OPERATE_TYPE valueOf(int val) {
String tmp = null;
for (int i = 0; i < values().length; i++) {
if (values()[i].value == val) {
return values()[i];
}
}
return null;
}
}
/**
* hql
*/
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum HQL_ENTITY_TYPE {
MASTER(1, "master", "主数据"),
BUSI(2, "busi", "业务数据");
private int value;
private String alias;
private String description;
private HQL_ENTITY_TYPE(int value, String alias, String description) {
this.value = value;
this.alias = alias;
this.description = description;
}
public int getValue() {
return value;
}
public String getAlias() {
return alias;
}
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 valueOfAlias(int val) {
String tmp = null;
for (int i = 0; i < values().length; i++) {
if (values()[i].value == val) {
tmp = values()[i].alias;
}
}
return tmp;
}
public static MdmEnumUtil.HQL_ENTITY_TYPE valueOf(int val) {
String tmp = null;
for (int i = 0; i < values().length; i++) {
if (values()[i].value == val) {
return values()[i];
}
}
return null;
}
}
/**
* mdm
*/
public enum MDM_SYNC_TYPE{
INSERT(1, "新增"),
UPDATE(2, "修改"),
DELETE(2, "删除");
private int value;
private String description;
private MDM_SYNC_TYPE(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;
}
public static MdmEnumUtil.MDM_SYNC_TYPE valueOf(int val) {
String tmp = null;
for (int i = 0; i < values().length; i++) {
if (values()[i].value == val) {
return values()[i];
}
}
return null;
}
}
}

@ -5091,7 +5091,8 @@ public class MesEnumUtil {
public enum BOARD_TYPE {
BOARD_CAPACITY_JIT("BOARD_CAPACITY_JIT", "产能监控看板(JIT)"),
BOARD_EQU_STATUS("BOARD_EQU_STATUS", "设备状态监控看板(布局模式)"),
BOARD_ORG_HOUR_OEE("BOARD_ORG_HOUR_OEE", " 工厂小时OEE");
BOARD_ORG_HOUR_OEE("BOARD_ORG_HOUR_OEE", " 工厂小时OEE"),
BOARD_WORK_CELL_STATUS("BOARD_WORK_CELL_STATUS", " 工位状态监听看板");
private String code;
private String description;
@ -6196,4 +6197,84 @@ public class MesEnumUtil {
return tmp;
}
}
/**
*
*/
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum OPTION_TYPE {
OPTION(10, "选配件"),
BOM_DISASSEMBLY(20, "BOM拆解");
private int value;
private String description;
OPTION_TYPE(int value, String description) {
this.value = value;
this.description = description;
}
public int getValue() {
return value;
}
public String getDescription() {
return description;
}
public static String valueOf(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 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;
}
}
/**
* (10-20-)
*/
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum YELLOW_GUN_RULE {
COLLECT_TORQUE(10, "继续采集扭矩"),
SEND_NEXT_GROUP_CODE(20, "发送下一个组合码");
private int value;
private String description;
YELLOW_GUN_RULE(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;
}
}
}

@ -2520,7 +2520,8 @@ public class MesPcnEnumUtil {
STEP_RAN_STATUS("stepRanStatus", "工步列表执行前"),
RUNNING_INFO("runningInfo", "执行信息"),
STOP_PCS_CTL("stopPcsCtl", "停止监控"),
RENEW_REQUEST_PARAMS("renewRequestParams", "回传刷新StationResultBean");
RENEW_REQUEST_PARAMS("renewRequestParams", "回传刷新StationResultBean"),
PROCESS_CONTENT("processContent", "过程组件内容");
private String value;
private String description;
@ -3770,40 +3771,6 @@ public class MesPcnEnumUtil {
}
/**
* (10-20-)
*/
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum YELLOW_GUN_RULE {
COLLECT_TORQUE(10, "继续采集扭矩"),
SEND_NEXT_GROUP_CODE(20, "发送下一个组合码");
private int value;
private String description;
YELLOW_GUN_RULE(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;
}
}
/**
*
*/
@JsonFormat(shape = JsonFormat.Shape.OBJECT)

@ -11,6 +11,31 @@ import com.fasterxml.jackson.annotation.JsonFormat;
public class PtlEnumUtil {
/**
*
*/
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum PTL_METHOD_TYPE {
INTERFACE(10, "界面方法"),
MONITOR(20, "监听方法");
private int value;
private String description;
PTL_METHOD_TYPE(int value, String description) {
this.value = value;
this.description = description;
}
public int getValue() {
return value;
}
public String getDescription() {
return description;
}
}
/**
* -
*/
@JsonFormat(shape = JsonFormat.Shape.OBJECT)

@ -3,8 +3,6 @@ package cn.estsh.i3plus.pojo.base.enumutil;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.util.StringUtils;
import static cn.estsh.i3plus.pojo.base.enumutil.PtlPcnEnumUtil.MONITOR_PROCESS_MESSAGE_TYPE.*;
/**
* @author Wynne.Lu
* @date 2020/2/12 17:41
@ -14,32 +12,6 @@ import static cn.estsh.i3plus.pojo.base.enumutil.PtlPcnEnumUtil.MONITOR_PROCESS_
public class PtlPcnEnumUtil {
/**
*
*/
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum ROUTE_STATUS_ERROR_RECORD_HANDLE_TYPE {
INNER(10, "内部处理"),
OUTER(20, "外部处理"),
REVIEW(30, "人工确认");
private int value;
private String description;
ROUTE_STATUS_ERROR_RECORD_HANDLE_TYPE(int value, String description) {
this.value = value;
this.description = description;
}
public int getValue() {
return value;
}
public String getDescription() {
return description;
}
}
/**
*
*/
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
@ -65,32 +37,6 @@ public class PtlPcnEnumUtil {
}
/**
*
*/
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum ROUTE_STATUS_ERROR_RECORD_CACHE_FLAG {
FALSE(10, "否"),
TRUE(20, "是"),
ORIGINAL(30, "原先");
private int value;
private String description;
ROUTE_STATUS_ERROR_RECORD_CACHE_FLAG(int value, String description) {
this.value = value;
this.description = description;
}
public int getValue() {
return value;
}
public String getDescription() {
return description;
}
}
/**
*
*/
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
@ -784,164 +730,6 @@ public class PtlPcnEnumUtil {
}
/**
*
*/
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum MONITOR_PROCESS_MESSAGE_TYPE {
CONNECT_CONTROL_CMD(10, "CONNECT_CONTROL_CMD", "connectControlService", "连接控制器"),
DISCONNECT_CONTROL_CMD(20, "DISCONNECT_CONTROL_CMD", "disconnectControlService", "断开控制器"),
EXCEPTION_DISCONNECT_CONTROL_CMD(25, "EXCEPTION_DISCONNECT_CONTROL_CMD", "disconnectControlService", "断开控制器"),
LIGHT_ON_CMD(30, "LIGHT_ON_CMD", "lightOnService", "亮灯命令"),
LIGHT_OFF_CMD(40, "LIGHT_OFF_CMD", "lightOffService", "灭灯命令"),
CONTROL_SIGNAL_CMD(50, "CONTROL_SIGNAL_CMD", "controlSignalService", "控制器反馈信号"),
INTERFACE_SIGNAL_CMD(60, "INTERFACE_SIGNAL_CMD", "", "发送给界面actor通过websocket返回"),
REFRESH_CONTROL_CMD(70, "REFRESH_CONTROL_CMD", "refreshControlService", "刷新");
private int value;
private String code;
private String callClass;
private String description;
MONITOR_PROCESS_MESSAGE_TYPE(int value, String code, String callClass, String description) {
this.value = value;
this.code = code;
this.callClass = callClass;
this.description = description;
}
public int getValue() {
return value;
}
public String getCode() {
return code;
}
public String getCallClass() {
return callClass;
}
public String getDescription() {
return description;
}
public static MONITOR_PROCESS_MESSAGE_TYPE getTypeByValue(String code) {
if (StringUtils.isEmpty(code)) {
return null;
}
for (MONITOR_PROCESS_MESSAGE_TYPE enums : values()) {
if (enums.getCode().equals(code)) {
return enums;
}
}
return null;
}
}
/**
*
*/
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum INTERFACE_SIGNAL_MESSAGE_TYPE {
CONNECT_CONTROL_CMD(10, "CONNECT_CONTROL_CMD", "connectControlService", "连接控制器"),
DISCONNECT_CONTROL_CMD(20, "DISCONNECT_CONTROL_CMD", "disconnectControlService", "断开控制器"),
REFRESH_CONTROL_CMD(30, "REFRESH_CONTROL_CMD", "refreshControlService", "刷新"),
SCAN_CONTROL_CMD(40, "SCAN_CONTROL_CMD", "scanControlService", "扫描"),
INIT_MODULE_CONTROL_CMD(50, "INIT_MODULE_CONTROL_CMD", "initModuleControlService", "初始化页面");
// UNLOCK_CONTROL_CMD(50, "UNLOCK_CONTROL_CMD", "unlockControlService", "解锁"),
// LABEL_SELF_CHECK_CONTROL_CMD(60, "labelSelfCheck", "labelSelfCheckControlService", "标签自检"),
// LIGHT_DETAIL_CONTROL_CMD(70, "LABEL_SELF_CHECK_CONTROL_CMD", "lightDetailControlService", "亮灯明细");
private int value;
private String code;
private String callClass;
private String description;
INTERFACE_SIGNAL_MESSAGE_TYPE(int value, String code, String callClass, String description) {
this.value = value;
this.code = code;
this.callClass = callClass;
this.description = description;
}
public int getValue() {
return value;
}
public String getCallClass() {
return callClass;
}
public String getCode() {
return code;
}
public String getDescription() {
return description;
}
public static INTERFACE_SIGNAL_MESSAGE_TYPE getTypeByValue(String code) {
if (StringUtils.isEmpty(code)) {
return null;
}
for (INTERFACE_SIGNAL_MESSAGE_TYPE enums : INTERFACE_SIGNAL_MESSAGE_TYPE.values()) {
if (enums.getCode().equals(code)) {
return enums;
}
}
return null;
}
}
/**
*
*/
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum GEN_TASK_MESSAGE_TYPE {
GEN_TASK_CMD(10, "GEN_TASK_CMD", "", "生成任务");
private int value;
private String code;
private String callClass;
private String description;
GEN_TASK_MESSAGE_TYPE(int value, String code, String callClass, String description) {
this.value = value;
this.code = code;
this.callClass = callClass;
this.description = description;
}
public int getValue() {
return value;
}
public String getCallClass() {
return callClass;
}
public String getCode() {
return code;
}
public String getDescription() {
return description;
}
public static INTERFACE_SIGNAL_MESSAGE_TYPE getTypeByValue(String code) {
if (StringUtils.isEmpty(code)) {
return null;
}
for (INTERFACE_SIGNAL_MESSAGE_TYPE enums : INTERFACE_SIGNAL_MESSAGE_TYPE.values()) {
if (enums.getCode().equals(code)) {
return enums;
}
}
return null;
}
}
/**
* websocket
*/
@JsonFormat(shape = JsonFormat.Shape.OBJECT)

@ -7547,4 +7547,92 @@ public class WmsEnumUtil {
return null;
}
}
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum SCAN_CATEGORY {
ASN(10, "wmsDoMovementMasterRepository", "ASN"),
PO(20, "wmsDoMovementMasterRepository", "PO"),
SO(30, "wmsDoMovementMasterRepository", "SO"),
MOVE(40, "wmsDoMovementMasterRepository", "移库单"),
IN_STOCK(50, "wmsDoMovementMasterRepository", "入库单"),
SHIPPING(60, "wmsDoMovementMasterRepository", "发运单"),
QC(70, "wmsDoMovementMasterRepository", "质检单"),
CS(80, "wmsCSOrderMasterRepository", "盘点单"),
SN(90, "wmsStockSnRepository", "条码"),
PO_SN(100, "wmsPoSnRepository", "收货条码");
private int value;
private String code;
private String description;
SCAN_CATEGORY(int value, String code, String description) {
this.value = value;
this.code = code;
this.description = description;
}
public int getValue() {
return value;
}
public String getDescription() {
return description;
}
public String getCode() {
return code;
}
public static String valueOf(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 valueOfDescription(int val) {
return valueOf(val);
}
public static int descriptionOfValue(String desc) {
return descOf(desc);
}
public static int descOf(String desc) {
int tmp = 1;
for (int i = 0; i < values().length; i++) {
if (values()[i].description.equals(desc)) {
tmp = values()[i].value;
}
}
return tmp;
}
public static SCAN_CATEGORY getByDesc(String desc) {
SCAN_CATEGORY tmp = null;
for (int i = 0; i < values().length; i++) {
if (values()[i].description.equals(desc)) {
tmp = values()[i];
}
}
return tmp;
}
public static SCAN_CATEGORY codeOf(Integer value) {
if (value == null) {
return null;
} else {
for (int i = 0; i < values().length; i++) {
if (values()[i].value == value) {
return values()[i];
}
}
}
return null;
}
}
}

@ -1,56 +0,0 @@
//package cn.estsh.i3plus.pojo.form.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;
//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 : yunhao
// * @CreateDate : 2020-03-12 13:36
// * @Modify:
// **/
//@Data
//@Entity
//@DynamicInsert
//@DynamicUpdate
//@EqualsAndHashCode(callSuper = true)
//@Table(name = "BF_ELEMENT_CONSTRAINT_PROPERTY")
//@Api(value = "元素约束属性", description = "元素约束属性")
//public class BfElementConstraintProperty extends BaseBean {
//
// @Column(name = "CONSTRAINT_ID")
// @ApiParam(value = "约束ID", example = "-1")
// @JsonSerialize(using = ToStringSerializer.class)
// private Long constraintId;
//
// @Column(name = "ELEMENT_PROPERTY_ID")
// @ApiParam(value = "元素属性ID", example = "-1")
// @JsonSerialize(using = ToStringSerializer.class)
// private Long elementPropertyId;
//
// @Column(name = "DATA_OBJECT_PROPERTY_ID")
// @ApiParam(value = "数据对象属性ID", example = "-1")
// @JsonSerialize(using = ToStringSerializer.class)
// private Long dataObjectPropertyId;
//
// @Column(name="PROPERTY_NAME")
// @ApiParam(value ="元素属性名称")
// private String propertyName;
//
// @Column(name="PROPERTY_CODE_RDD")
// @ApiParam(value ="元素属性代码")
// private String propertyCodeRdd;
//
//}

@ -0,0 +1,66 @@
package cn.estsh.i3plus.pojo.form.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;
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 : yunhao
* @CreateDate : 2020-05-27 21:21
* @Modify:
**/
@Data
@Entity
@DynamicInsert
@DynamicUpdate
@EqualsAndHashCode(callSuper = true)
@Table(name = "BF_ELEMENT_PICK_UP_PROPERTY")
@Api(value = "表单拾取属性", description = "表单拾取属性")
public class BfElementPickUpProperty extends BaseBean {
@Column(name = "PICK_UP_PROPERTY_ID")
@ApiParam(value = "拾取属性id", example = "-1")
@JsonSerialize(using = ToStringSerializer.class)
private Long pickUpPropertyId;
@Column(name = "ELEMENT_ID")
@ApiParam(value = "对象元素ID", example = "-1")
@JsonSerialize(using = ToStringSerializer.class)
private Long elementId;
@Column(name="ELEMENT_PROPERTY_ID")
@ApiParam(value ="元素属性id")
@JsonSerialize(using = ToStringSerializer.class)
private Long elementPropertyId;
@Column(name="ELEMENT_PROPERTY_NAME")
@ApiParam(value ="元素属性名称")
private String elementPropertyName;
@Column(name = "PICK_UP_ELEMENT_ID")
@ApiParam(value = "拾取元素ID", example = "-1")
@JsonSerialize(using = ToStringSerializer.class)
private Long pickUpElementId;
@Column(name="PICK_UP_ELEMENT_PROPERTY_ID")
@ApiParam(value ="拾取元素属性id")
@JsonSerialize(using = ToStringSerializer.class)
private Long pickUpElementPropertyId;
@Column(name="PICK_UP_ELEMENT_PROPERTY_NAME")
@ApiParam(value ="拾取元素属性名称")
private String pickUpElementPropertyName;
}

@ -15,6 +15,7 @@ import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import javax.persistence.Transient;
import java.util.List;
/**
* @Description :
@ -149,6 +150,9 @@ public class BfElementProperty extends BaseBean {
@ApiParam(value ="是否为唯一约束字段")
private transient Integer isUniqueProperty;
@Transient
@ApiParam(value ="拾取关联属性")
private List<BfElementPickUpProperty> pickUpPropertyList;
// public Object getFormValue() {
// return propertyFormValue == null ? propertyDefaultValue : propertyFormValue;

@ -0,0 +1,14 @@
package cn.estsh.i3plus.pojo.form.repository;
import cn.estsh.i3plus.pojo.base.jpa.dao.BaseRepository;
import cn.estsh.i3plus.pojo.form.bean.BfElementPickUpProperty;
/**
* @Description :
* @Reference :
* @Author : yunhao
* @CreateDate : 2020-05-21 15:18
* @Modify:
**/
public interface BfElementPickUpPropertyRepository extends BaseRepository<BfElementPickUpProperty,Long> {
}

@ -3,10 +3,15 @@ package cn.estsh.i3plus.pojo.mdm.bean.base;
import cn.estsh.i3plus.pojo.base.annotation.AnnoOutputColumn;
import cn.estsh.i3plus.pojo.base.bean.BaseBean;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.enumutil.MdmEnumUtil;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.persistence.Column;
import javax.persistence.MappedSuperclass;
import javax.persistence.Transient;
/**
@ -17,30 +22,71 @@ import javax.persistence.Transient;
* @Modify:
**/
@Data
@MappedSuperclass
@ApiModel("MDM基础bean")
public class BaseMdmBean extends BaseBean {
public abstract class BaseMdmBean extends BaseBean {
private static final long serialVersionUID = 3957595289035947441L;
@Transient
@ApiModelProperty("是否主数据")
@AnnoOutputColumn(refClass = CommonEnumUtil.TRUE_OR_FALSE.class)
public static Integer isMdmMaster = CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue();
public static Integer isMdmMaster = CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue();
@Column(name = "MDM_VERSION")
@ApiModelProperty("mdm数据版本")
@JsonSerialize(using = ToStringSerializer.class)
private Long mdmVersion;
public long getMdmVersion() {
public long getMdmVersionVal() {
return mdmVersion == null ? 0 : mdmVersion;
}
// 版本递增
public long nextMdmVersion() {
return mdmVersion = getMdmVersion() + 1;
mdmVersion = getMdmVersionVal() + 1;
return mdmVersion;
}
@Column(name = "IS_MDM_PUBLISHED")
@ApiModelProperty("是否发布")
@AnnoOutputColumn(refClass = CommonEnumUtil.TRUE_OR_FALSE.class)
private Integer isPublished;
private Integer isMdmPublished;
@Column(name = "MDM_OPERATE_TYPE")
@ApiModelProperty("操作类型")
@AnnoOutputColumn(refClass = MdmEnumUtil.MDM_OPERATE_TYPE.class)
private Integer mdmOperateType;
public Integer getMdmOperateTypeVal() {
return mdmOperateType == null ? MdmEnumUtil.MDM_OPERATE_TYPE.INSERT.getValue() : mdmOperateType;
}
@Column(name = "MDM_REF_ID")
@ApiModelProperty("关联id")
@JsonSerialize(using = ToStringSerializer.class)
private Long mdmRefId;
//排序方式
@Override
public String orderBy() {
String result = "";
if (orderByParam != null && orderByParam.trim().length() > 0) {
result = " order by ";
if (CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue() == isMdmMaster) {
result += "master.";
} else {
result += "busi.";
}
result += orderByParam;
if (ascOrDesc == CommonEnumUtil.ASC_OR_DESC.ASC.getValue()) {
result += " asc";
} else {
result += " desc";
}
}
return result;
}
}

@ -0,0 +1,49 @@
package cn.estsh.i3plus.pojo.mdm.bean.base;
import cn.estsh.i3plus.pojo.base.annotation.AnnoOutputColumn;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.persistence.Column;
import javax.persistence.MappedSuperclass;
import javax.persistence.Transient;
/**
* @Description : MDMbean
* @Reference :
* @Author : yunhao
* @CreateDate : 2020-05-12 17:30
* @Modify:
**/
@Data
@MappedSuperclass
@ApiModel("MDM业务基础bean")
public class BaseMdmBusiExtdBean extends BaseMdmBean {
private static final long serialVersionUID = 4267453020130810967L;
@Transient
@ApiModelProperty("是否主数据")
@AnnoOutputColumn(refClass = CommonEnumUtil.TRUE_OR_FALSE.class)
public static Integer isMdmMaster = CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue();
@Transient
@ApiModelProperty("主数据Class")
@AnnoOutputColumn(refClass = CommonEnumUtil.TRUE_OR_FALSE.class)
public static Class<BaseMdmBean> mdmMasterClass = BaseMdmBean.class;
@Transient
@ApiModelProperty("软件模块")
@AnnoOutputColumn(refClass = CommonEnumUtil.TRUE_OR_FALSE.class)
public static Integer mdmSoftType;
@Column(name = "MDM_MASTER_ID")
@ApiModelProperty("主数据id")
@JsonSerialize(using = ToStringSerializer.class)
private Long mdmMasterId;
}

@ -0,0 +1,64 @@
package cn.estsh.i3plus.pojo.mdm.bean.base;
import io.swagger.annotations.ApiModelProperty;
/**
* @Description :MDMbean
* @Reference :
* @Author : yunhao
* @CreateDate : 2020-05-18 20:52
* @Modify:
**/
public abstract class BaseMdmBusiModelBean<M extends BaseMdmBean, B extends BaseMdmBusiExtdBean> {
@ApiModelProperty("主数据")
private M mdmMasterBean;
@ApiModelProperty("业务扩展")
private B mdmBusiBean;
public BaseMdmBusiModelBean() {
}
public BaseMdmBusiModelBean(M mdmMasterBean, B mdmBusiBean) {
this.mdmMasterBean = mdmMasterBean;
this.mdmBusiBean = mdmBusiBean;
}
/**
* m
*
* @return
*/
public M getMaster() {
return mdmMasterBean;
}
/**
*
*
* @return
*/
public B getBusi() {
return mdmBusiBean;
}
/**
* m
*
* @return
*/
public void setMaster(M baseMdmBean) {
this.mdmMasterBean = baseMdmBean;
}
/**
*
*
* @return
*/
public void setBusi(B baseMdmBusiExtdBean) {
this.mdmBusiBean = baseMdmBusiExtdBean;
}
}

@ -1,30 +0,0 @@
package cn.estsh.i3plus.pojo.mdm.bean.base;
import cn.estsh.i3plus.pojo.base.annotation.AnnoOutputColumn;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.persistence.Transient;
/**
* @Description : MDMbean
* @Reference :
* @Author : yunhao
* @CreateDate : 2020-05-12 17:30
* @Modify:
**/
@Data
@ApiModel("MDM业务基础bean")
public class BaseMdmExtdBean extends BaseMdmBean {
private static final long serialVersionUID = 4267453020130810967L;
@Transient
@ApiModelProperty("软件模块")
@AnnoOutputColumn(refClass = CommonEnumUtil.TRUE_OR_FALSE.class)
public static Integer mdmSoftType;
}

@ -0,0 +1,271 @@
package cn.estsh.i3plus.pojo.mdm.bean.base;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.enumutil.MdmEnumUtil;
import cn.estsh.i3plus.pojo.mdm.sqlpack.DdlMdmModelPreparedPack;
import java.util.ArrayList;
import java.util.List;
/**
* @Description : hql
* @Reference :
* @Author : alwaysfrin
* @CreateDate : 2019-03-29 15:57
* @Modify:
**/
public class DdlPackMdmModelBean {
/**
*
*/
List<MdmEnumUtil.HQL_ENTITY_TYPE> entityTypeList;
/**
*
*/
List<String> keyList;
/**
*
*/
List<Object> valueList;
//是否是hql
private boolean isHql;
//手动hql尽量避免直接传参使用代替
private String hqlAppend;
//where后跟着的hql/sql
private StringBuilder whereAppend;
//排序内容
private String orderByStr;
//需要拼接的hql
private StringBuilder sb = null;
public DdlPackMdmModelBean() {
this.isHql = true;
whereAppend = new StringBuilder();
entityTypeList = new ArrayList<>();
keyList = new ArrayList<>();
valueList = new ArrayList<>();
}
public DdlPackMdmModelBean(boolean isHql) {
this.isHql = isHql;
whereAppend = new StringBuilder();
entityTypeList = new ArrayList<>();
keyList = new ArrayList<>();
valueList = new ArrayList<>();
}
/**
*
*
* @param organizeCode
* @return
*/
public static DdlPackMdmModelBean getDdlPackBean(String organizeCode) {
DdlPackMdmModelBean result = new DdlPackMdmModelBean();
DdlMdmModelPreparedPack.getNumEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE.MASTER, CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue(), "isMdmPublished", result);
DdlMdmModelPreparedPack.getNumEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE.MASTER, CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue(), "isDeleted", result);
DdlMdmModelPreparedPack.getNumEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE.MASTER, CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue(), "isValid", result);
DdlMdmModelPreparedPack.getStringEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE.MASTER, organizeCode, "organizeCode", result);
DdlMdmModelPreparedPack.getNumEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE.BUSI, CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue(), "isMdmPublished", result);
DdlMdmModelPreparedPack.getNumEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE.BUSI, CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue(), "isDeleted", result);
DdlMdmModelPreparedPack.getNumEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE.BUSI, CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue(), "isValid", result);
DdlMdmModelPreparedPack.getStringEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE.BUSI, organizeCode, "organizeCode", result);
return result;
}
/**
*
*
* @param organizeCode
* @param isValid
* @return
*/
public static DdlPackMdmModelBean getDdlPackBean(String organizeCode, int isValid) {
DdlPackMdmModelBean result = new DdlPackMdmModelBean();
DdlMdmModelPreparedPack.getNumEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE.MASTER, CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue(), "isMdmPublished", result);
DdlMdmModelPreparedPack.getNumEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE.MASTER, CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue(), "isDeleted", result);
DdlMdmModelPreparedPack.getNumEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE.MASTER, isValid, "isValid", result);
DdlMdmModelPreparedPack.getStringEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE.MASTER, organizeCode, "organizeCode", result);
DdlMdmModelPreparedPack.getNumEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE.BUSI, CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue(), "isMdmPublished", result);
DdlMdmModelPreparedPack.getNumEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE.BUSI, CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue(), "isDeleted", result);
DdlMdmModelPreparedPack.getNumEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE.BUSI, isValid, "isValid", result);
DdlMdmModelPreparedPack.getStringEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE.BUSI, organizeCode, "organizeCode", result);
return result;
}
public static DdlPackMdmModelBean getDdlPackBean() {
DdlPackMdmModelBean result = new DdlPackMdmModelBean();
DdlMdmModelPreparedPack.getNumEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE.MASTER, CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue(), "isMdmPublished", result);
DdlMdmModelPreparedPack.getNumEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE.MASTER, CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue(), "isDeleted", result);
DdlMdmModelPreparedPack.getNumEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE.MASTER, CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue(), "isValid", result);
DdlMdmModelPreparedPack.getNumEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE.BUSI, CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue(), "isMdmPublished", result);
DdlMdmModelPreparedPack.getNumEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE.BUSI, CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue(), "isDeleted", result);
DdlMdmModelPreparedPack.getNumEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE.BUSI, CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue(), "isValid", result);
return result;
}
public static DdlPackMdmModelBean getDdlPackBean(BaseMdmBusiModelBean bean) {
DdlPackMdmModelBean result = new DdlPackMdmModelBean();
DdlMdmModelPreparedPack.getNumEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE.MASTER, CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue(), "isMdmPublished", result);
DdlMdmModelPreparedPack.getNumEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE.MASTER, CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue(), "isDeleted", result);
DdlMdmModelPreparedPack.getNumEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE.MASTER, CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue(), "isValid", result);
DdlMdmModelPreparedPack.getNumEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE.BUSI, CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue(), "isMdmPublished", result);
DdlMdmModelPreparedPack.getNumEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE.BUSI, CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue(), "isDeleted", result);
DdlMdmModelPreparedPack.getNumEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE.BUSI, CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue(), "isValid", result);
if (bean != null) {
if (bean.getBusi() != null) {
result.setOrderByStr(bean.getBusi().orderBy());
} else if (bean.getMaster() != null) {
result.setOrderByStr(bean.getMaster().orderBy());
}
}
return result;
}
public boolean isHql() {
return isHql;
}
public void setHql(boolean hql) {
isHql = hql;
}
public String getOrderByStr() {
return orderByStr;
}
public void setOrderByStr(String orderByStr) {
this.orderByStr = orderByStr;
}
public String getHqlAppend() {
return hqlAppend;
}
public void setHqlAppend(String hqlAppend) {
this.hqlAppend = hqlAppend;
}
public String getWhereAppend() {
return whereAppend.toString();
}
public void setWhereAppend(String whereAppend) {
this.whereAppend = new StringBuilder(whereAppend);
}
public List<MdmEnumUtil.HQL_ENTITY_TYPE> getEntityTypeList() {
return entityTypeList;
}
public void setEntityTypeList(List<MdmEnumUtil.HQL_ENTITY_TYPE> entityTypeList) {
this.entityTypeList = entityTypeList;
}
public List<String> getKeyList() {
return keyList;
}
public void setKeyList(List<String> keyList) {
this.keyList = keyList;
}
public List<Object> getValueList() {
return valueList;
}
public void setValueList(List<Object> valueList) {
this.valueList = valueList;
}
/**
*
*
* @param hql
* @param val
*/
public void addColumnQuery(MdmEnumUtil.HQL_ENTITY_TYPE entityType, String column, String hql, Object val) {
if (entityTypeList == null) {
entityTypeList = new ArrayList<>();
}
if (keyList == null) {
keyList = new ArrayList<>();
}
if (valueList == null) {
valueList = new ArrayList<>();
}
if (entityType != null && column != null && val != null) {
entityTypeList.add(entityType);
keyList.add(column);
valueList.add(val);
}
whereAppend.append(hql);
}
/**
*
*
* @return
*/
public int getColumnSize() {
return keyList.size();
}
/**
* hqlddl
*
* @return
*/
public String getPackedHqlAll() {
sb = new StringBuilder();
if (hqlAppend != null) {
sb.append(hqlAppend);
}
if (whereAppend != null) {
sb.append(whereAppend);
}
if (orderByStr != null) {
sb.append(orderByStr);
}
return sb.toString();
}
/**
* ddl
*
* @return
*/
public String getPackedHql() {
sb = new StringBuilder();
if (whereAppend != null) {
sb.append(whereAppend);
}
if (orderByStr != null) {
sb.append(orderByStr);
}
return sb.toString();
}
}

@ -0,0 +1,74 @@
package cn.estsh.i3plus.pojo.mdm.bean.base;
import cn.estsh.i3plus.pojo.base.annotation.AnnoOutputColumn;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.enumutil.MdmEnumUtil;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
* @Description :
* @Reference :
* @Author : yunhao
* @CreateDate : 2020-06-02 16:14
* @Modify:
**/
@Data
@ApiModel("数据中心同步数据")
public class MdmSyncData implements Serializable {
private static final long serialVersionUID = -1642626000860074060L;
@ApiModelProperty("同步数据类型")
@AnnoOutputColumn(refClass = MdmEnumUtil.MDM_SYNC_TYPE.class)
private Integer syncType;
public int getSyncTypeVal(){
return syncType == null ? MdmEnumUtil.MDM_SYNC_TYPE.INSERT.getValue() : syncType;
}
@ApiModelProperty("同步模块")
@AnnoOutputColumn(refClass = CommonEnumUtil.SOFT_TYPE.class)
private Integer syncSoftType;
@ApiModelProperty("是否是主数据")
@AnnoOutputColumn(refClass = CommonEnumUtil.TRUE_OR_FALSE.class)
private Integer isMasterData;
public int getIsMasterDataVal() {
return isMasterData == null ? CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue() : isMasterData;
}
@ApiModelProperty("同步数据class")
private String syncDataClass;
public String getSyncDataClassSimpleName(){
if(syncDataClass == null){
return null;
}
return syncDataClass.trim().substring(syncDataClass.trim().lastIndexOf(".") + 1);
}
@ApiModelProperty("同步数据id")
private List<Long> syncDataId;
@ApiModelProperty("同步数据用户名")
private String syncDateUserName;
@ApiModelProperty("同步时间")
private String syncDateTime;
@ApiModelProperty("同步失败键")
private String syncFailKey;
@ApiModelProperty("同步失败时间")
private String syncFailDateTime;
@ApiModelProperty("同步失败信息")
private String syncFailMessage;
}

@ -0,0 +1,51 @@
package cn.estsh.i3plus.pojo.mdm.bean.busi.core;
import cn.estsh.i3plus.pojo.base.annotation.AnnoOutputColumn;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.mdm.bean.base.BaseMdmBusiExtdBean;
import cn.estsh.i3plus.pojo.mdm.bean.master.MdmGear;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
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 : yunhao
* @CreateDate : 2020-05-12 18:09
* @Modify:
**/
@Data
@Entity
@DynamicInsert
@DynamicUpdate
@EqualsAndHashCode(callSuper = true)
@Table(name="MDM_GEAR_CORE_EXTD")
@ApiModel("主数据齿轮-平台扩展")
public class MdmGearCoreBusiExtd extends BaseMdmBusiExtdBean {
private static final long serialVersionUID = -3535174942277452194L;
@Transient
@ApiModelProperty("主数据Class")
@AnnoOutputColumn(refClass = CommonEnumUtil.TRUE_OR_FALSE.class)
public static Class mdmMasterClass = MdmGear.class;
@Transient
@ApiModelProperty("软件模块")
@AnnoOutputColumn(refClass = CommonEnumUtil.TRUE_OR_FALSE.class)
public static Integer mdmSoftType = CommonEnumUtil.SOFT_TYPE.CORE.getValue();
@Column(name = "CORE_NUM")
@ApiModelProperty("核心数量")
public String coreNum;
}

@ -1,31 +0,0 @@
package cn.estsh.i3plus.pojo.mdm.bean.busi.core;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.mdm.bean.base.BaseMdmExtdBean;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @Description : 齿-
* @Reference :
* @Author : yunhao
* @CreateDate : 2020-05-12 18:09
* @Modify:
**/
@Data
@ApiModel("主数据齿轮-平台扩展")
public class MdmGearCoreExtd extends BaseMdmExtdBean {
private static final long serialVersionUID = -3535174942277452194L;
// 初始化数据
static {
isMdmMaster = CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue();
mdmSoftType = CommonEnumUtil.SOFT_TYPE.CORE.getValue();
}
@ApiModelProperty("核心数量")
public String coreNum;
}

@ -4,6 +4,13 @@ import cn.estsh.i3plus.pojo.mdm.bean.base.BaseMdmBean;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
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 : 齿
@ -13,14 +20,21 @@ import lombok.Data;
* @Modify:
**/
@Data
@Entity
@DynamicInsert
@DynamicUpdate
@EqualsAndHashCode(callSuper = true)
@Table(name="MDM_GEAR")
@ApiModel("主数据齿轮")
public class MdmGear extends BaseMdmBean {
private static final long serialVersionUID = -7580444601811207793L;
@Column(name="NAME")
@ApiModelProperty("齿轮名称")
private String name;
@Column(name="GEAR_MODEL")
@ApiModelProperty("齿轮规格")
private String gearModel;

@ -1,19 +0,0 @@
package cn.estsh.i3plus.pojo.mdm.bean.model.core;
import cn.estsh.i3plus.pojo.mdm.bean.busi.core.MdmGearCoreExtd;
import cn.estsh.i3plus.pojo.mdm.bean.master.MdmGear;
/**
* @Description : 齿-model
* @Reference :
* @Author : yunhao
* @CreateDate : 2020-05-12 18:09
* @Modify:
**/
public class MdmGearCoreModel {
private MdmGear mdmGear;
private MdmGearCoreExtd mdmGearCoreExtd;
}

@ -0,0 +1,112 @@
package cn.estsh.i3plus.pojo.mdm.jpa.dao;
import cn.estsh.i3plus.pojo.base.common.Pager;
import cn.estsh.i3plus.pojo.base.enumutil.MdmEnumUtil;
import cn.estsh.i3plus.pojo.mdm.bean.base.BaseMdmBean;
import cn.estsh.i3plus.pojo.mdm.bean.base.BaseMdmBusiExtdBean;
import cn.estsh.i3plus.pojo.mdm.bean.base.BaseMdmBusiModelBean;
import cn.estsh.i3plus.pojo.mdm.bean.base.DdlPackMdmModelBean;
import java.util.List;
/**
* @Description : Repository
* @Reference : jpaRepository
* @Author : alwaysfrin
* @CreateDate : 2018-09-13 10:34
* @Modify:
**/
public interface MdmBusiModelRepository<T extends BaseMdmBusiModelBean<M, B>, M extends BaseMdmBean, B extends BaseMdmBusiExtdBean> {
T getById(long id);
List<T> list();
List<T> list(final String hql);
List<T> listPager(Pager pager);
List<T> findByPage(final DdlPackMdmModelBean packBean, final int offset, final int pageSize);
/**
* @param hql hql
* @param values
* @param offset
* @param pageSize
* @return
*/
List<T> findByPage(final String hql, final Object[] values, final int offset, final int pageSize);
List<T> findByProperty(MdmEnumUtil.HQL_ENTITY_TYPE entityType, String propertyName, Object value);
List<T> findByProperty(MdmEnumUtil.HQL_ENTITY_TYPE[] entityTypes, String[] propertyNames, Object[] values);
List<T> findByProperty(MdmEnumUtil.HQL_ENTITY_TYPE entityType, String propertyName, Object value, String orderByStuff);
List<T> findByProperty(MdmEnumUtil.HQL_ENTITY_TYPE[] entityTypes, String[] propertyNames, Object[] values, String orderByStuff);
T getByProperty(DdlPackMdmModelBean packBean);
T getByProperty(MdmEnumUtil.HQL_ENTITY_TYPE entityType, String propertyName, Object value);
T getByProperty(MdmEnumUtil.HQL_ENTITY_TYPE[] entityTypes, String[] propertyNames, Object[] values);
int listCount();
int findByPropertyCount(MdmEnumUtil.HQL_ENTITY_TYPE entityType, String propertyName, Object value);
int findByPropertyCount(MdmEnumUtil.HQL_ENTITY_TYPE[] entityTypes, String[] propertyNames, Object[] values);
List<T> findByPropertyPage(MdmEnumUtil.HQL_ENTITY_TYPE entityType, String propertyName, Object value, String orderByStuff, Pager pager);
List<T> findByPropertyPage(MdmEnumUtil.HQL_ENTITY_TYPE[] entityTypes, String[] propertyNames, Object[] values, String orderByStuff, Pager pager);
List<T> findByHqlWhere(DdlPackMdmModelBean packBean);
List<T> findByHqlWhere(String hqlWhere, MdmEnumUtil.HQL_ENTITY_TYPE[] entityTypes, String[] propertyNames, Object[] values, String orderByStuff);
int findByHqlWhereCount(String hqlWhere, MdmEnumUtil.HQL_ENTITY_TYPE[] entityTypes, String[] propertyNames, Object[] values);
List<T> findByHqlWherePage(String hqlWhere, Pager pager, MdmEnumUtil.HQL_ENTITY_TYPE[] entityTypes, String[] propertyNames, Object[] values, String orderByStuff);
List<T> findByHqlWherePage(DdlPackMdmModelBean packBean, Pager pager);
int findByHqlWhereCount(DdlPackMdmModelBean packBean);
int findByHqlCount(String hql);
int findByHqlCount(String hql, MdmEnumUtil.HQL_ENTITY_TYPE[] entityTypes, String[] paramName, Object[] paramValue);
List<T> findByHqlPage(DdlPackMdmModelBean packBean, Pager pager);
List<T> findByHqlPage(String hql, Pager pager, MdmEnumUtil.HQL_ENTITY_TYPE[] entityTypes, String[] paramName, Object[] paramValue);
double findByHqlDouble(DdlPackMdmModelBean packBean);
long findByHqlLong(DdlPackMdmModelBean packBean);
List<T> findByHqlTopWhere(DdlPackMdmModelBean packBean, int topNum);
/********************** 多表联查返回Object[]数组根据hql查询翻页信息 开始 ****************************/
List<Object[]> findByHqlObjects(String hql);
List<Object[]> findByHqlObjects(String hql, MdmEnumUtil.HQL_ENTITY_TYPE[] entityTypes, String[] paramName, Object[] paramValue);
List<Object[]> findByHqlPageObjects(String hql, Pager pager);
List<Object[]> findByHqlPageObjects(String hql, Pager pager, MdmEnumUtil.HQL_ENTITY_TYPE[] entityTypes, String[] paramName, Object[] paramValue);
List<Object[]> findBySqlObjList(String sql);
List<Object[]> findBySqlObjListByPager(String sql, Pager pager);
/****************** 部分业务处理 *******************/
boolean isExitByProperty(MdmEnumUtil.HQL_ENTITY_TYPE entityType, String propertyName, Object value);
boolean isExitByProperty(MdmEnumUtil.HQL_ENTITY_TYPE[] entityTypes, String[] propertyNames, Object[] values);
boolean isExitByHqlWhere(String hqlWhere, MdmEnumUtil.HQL_ENTITY_TYPE[] entityTypes, String[] propertyNames, Object[] values);
boolean isExitByHql(DdlPackMdmModelBean packBean);
}

@ -0,0 +1,840 @@
package cn.estsh.i3plus.pojo.mdm.jpa.daoimpl;
import cn.estsh.i3plus.pojo.base.common.Pager;
import cn.estsh.i3plus.pojo.base.enumutil.MdmEnumUtil;
import cn.estsh.i3plus.pojo.mdm.bean.base.BaseMdmBean;
import cn.estsh.i3plus.pojo.mdm.bean.base.BaseMdmBusiExtdBean;
import cn.estsh.i3plus.pojo.mdm.bean.base.BaseMdmBusiModelBean;
import cn.estsh.i3plus.pojo.mdm.bean.base.DdlPackMdmModelBean;
import cn.estsh.i3plus.pojo.mdm.jpa.dao.MdmBusiModelRepository;
import org.hibernate.NonUniqueResultException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import javax.persistence.EntityManager;
import javax.persistence.NoResultException;
import javax.persistence.Query;
import java.lang.reflect.ParameterizedType;
import java.text.MessageFormat;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Date;
import java.util.List;
/**
* @Description :
* @Reference :
* @Author : yunhao
* @CreateDate : 2020-05-21 15:05
* @Modify:
**/
public class MdmBusiModelRepositoryImpl<T extends BaseMdmBusiModelBean<M, B>, M extends BaseMdmBean, B extends BaseMdmBusiExtdBean>
implements MdmBusiModelRepository<T, M, B> {
public static final Logger LOGGER = LoggerFactory.getLogger(MdmBusiModelRepositoryImpl.class);
/**
*
*/
@Autowired
private EntityManager entityManager;
private final Class<T> modelClass;
private final Class<M> masterClass;
private final Class<B> busiExtdClass;
private final String selectCount;
private final String selectAll;
private final String formStr;
public MdmBusiModelRepositoryImpl() {
// 通过反射获取model的真实类型
ParameterizedType pt = (ParameterizedType) this.getClass().getGenericSuperclass();
modelClass = (Class<T>) pt.getActualTypeArguments()[0];
masterClass = (Class<M>) pt.getActualTypeArguments()[1];
busiExtdClass = (Class<B>) pt.getActualTypeArguments()[2];
this.formStr = String.format("from %s as busi left join %s as master on busi.mdmMasterId = master.id ",
busiExtdClass.getName(), masterClass.getName()
);
this.selectCount = "select count(distinct busi) " + formStr;
this.selectAll = MessageFormat.format("select new {0}(master,busi) ", modelClass.getName()) + formStr;
}
private void setParameter(Query query, String[] propName, Object[] propValue) {
String name = null;
Object value = null;
for (int i = 0; i < propName.length; i++) {
name = propName[i];
value = propValue[i];
if (value != null) {
if ((value instanceof Object[])) {
query.setParameter(name.replace(".", ""), (Object[]) value);
} else if ((value instanceof Collection)) {
query.setParameter(name.replace(".", ""), (Collection) value);
} else {
query.setParameter(name.replace(".", ""), value);
}
}
}
}
private void appendQL(StringBuffer sb, String[] propName, Object[] propValue) {
String name = null;
Object value = null;
for (int i = 0; i < propName.length; i++) {
name = propName[i];
value = propValue[i];
if (((value instanceof Object[])) || ((value instanceof Collection))) {
Object[] arraySerializable = (Object[]) value;
if ((arraySerializable != null) && (arraySerializable.length > 0)) {
sb.append(" and model." + name + " in (:" + name.replace(".", "") + ")");
}
} else if (value == null) {
sb.append(" and model." + name + " is null ");
} else {
sb.append(" and model." + name + "=:" + name.replace(".", ""));
}
}
}
@Override
public T getById(long id) {
try {
List<T> busiModelList =
entityManager.createQuery(selectAll + " where busi.id = :busi_id").setParameter("busi_id", id).getResultList();
return busiModelList.isEmpty() ? modelClass.newInstance() : busiModelList.get(0);
} catch (Exception e) {
return null;
}
}
@Override
public List<T> list() {
List<T> l = entityManager.createQuery(selectAll).getResultList();
return l;
}
@Override
public List<T> listPager(Pager pager) {
if (pager.getTotalRows() > 0) {
return entityManager.createQuery(selectAll)
.setFirstResult(pager.getStartRow())
.setMaxResults(pager.getPageSize())
.getResultList();
} else {
return new ArrayList<>();
}
}
@Override
public List<T> list(final String hql) {
return entityManager.createQuery(hql).getResultList();
}
@Override
public List<T> findByPage(DdlPackMdmModelBean packBean, int offset, int pageSize) {
Query query = null;
String ddl = selectAll + " where 1=1 " + packBean.getPackedHql();
if (packBean.isHql()) {
query = entityManager.createQuery(ddl);
} else {
query = entityManager.createNativeQuery(ddl);
}
for (int i = 0; i < packBean.getKeyList().size(); i++) {
query.setParameter(
packBean.getEntityTypeList().get(i).getAlias() + "." + packBean.getKeyList().get(i),
packBean.getValueList().get(i)
);
}
return query.setFirstResult(offset)
.setMaxResults(pageSize)
.getResultList();
}
@Override
public List<T> findByPage(String hql, Object[] values, int offset, int pageSize) {
Query query = entityManager.createQuery(hql);
for (int i = 0; i < values.length; i++) {
query.setParameter(i, values[i]);
}
return query.setFirstResult(offset).setMaxResults(pageSize).getResultList();
}
@Override
public List<T> findByProperty(MdmEnumUtil.HQL_ENTITY_TYPE entityType, String propertyName, Object value) {
String queryString = MessageFormat.format("{0} where {1}.{2}= :{3}_{4}", selectAll, entityType.getAlias(), propertyName,
entityType.getAlias(), propertyName);
return entityManager.createQuery(queryString).setParameter(entityType.getAlias() + "_" + propertyName, value).getResultList();
}
@Override
public List<T> findByProperty(MdmEnumUtil.HQL_ENTITY_TYPE[] entityTypes, String[] propertyNames, Object[] values) {
if (entityTypes.length != propertyNames.length || propertyNames.length != values.length) {
throw new IllegalArgumentException("参数名的数量和参数值不匹配!entityTypes:" + entityTypes.length + " propertyNames:" + propertyNames.length + ",values:" + values.length);
}
StringBuffer queryString = new StringBuffer();
queryString.append(selectAll);
int size = propertyNames.length;
if (size > 0) {
queryString.append("where 1=1 ");
}
for (int i = 0; i < size; i++) {
if (values[i] != null) {
queryString.append(
MessageFormat.format(" and {0}.{1}= :{2}_{3}"
, entityTypes[i].getAlias()
, propertyNames[i]
, entityTypes[i].getAlias()
, propertyNames[i]
)
);
}
}
Query queryObject = entityManager.createQuery(queryString.toString());
for (int i = 0; i < size; i++) {
if (values[i] != null) {
queryObject.setParameter(entityTypes[i].getAlias() + "_" + propertyNames[i], values[i]);
}
}
return queryObject.getResultList();
}
@Override
public List<T> findByProperty(MdmEnumUtil.HQL_ENTITY_TYPE entityType, String propertyName, Object value, String orderByStuff) {
String queryString = MessageFormat.format("{0} where {1}.{2}= :{3} {4}", selectAll, entityType.getAlias(), propertyName, propertyName, orderByStuff);
return entityManager.createQuery(queryString).setParameter(propertyName, value).getResultList();
}
@Override
public List<T> findByProperty(MdmEnumUtil.HQL_ENTITY_TYPE[] entityTypes, String[] propertyNames, Object[] values, String orderByStuff) {
if (propertyNames.length != values.length) {
throw new IllegalArgumentException("参数名的数量和参数值不匹配!propertyNames:" + propertyNames.length + ",values:" + values.length);
}
StringBuffer queryString = new StringBuffer();
queryString.append(selectAll);
int size = propertyNames.length;
if (size > 0) {
queryString.append("where 1=1 ");
}
for (int i = 0; i < size; i++) {
if (values[i] != null) {
queryString.append(
MessageFormat.format(" and {0}.{1}= :{2}_{3}"
, entityTypes[i].getAlias()
, propertyNames[i]
, entityTypes[i].getAlias()
, propertyNames[i]
)
);
}
}
queryString.append(" " + orderByStuff);
Query queryObject = entityManager.createQuery(queryString.toString());
for (int i = 0; i < size; i++) {
if (values[i] != null) {
queryObject.setParameter(entityTypes[i].getAlias() + "_" + propertyNames[i], values[i]);
}
}
return queryObject.getResultList();
}
@Override
public T getByProperty(DdlPackMdmModelBean packBean) {
try {
List<T> list = findByHqlWhere(packBean);
return list.size() != 0 ? list.get(0) : null;
} catch (NoResultException ne) {
LOGGER.error("数据不存在DdlPackMdmModelBean{}", packBean);
return null;
} catch (NonUniqueResultException ex) {
LOGGER.error("查询单条记录但出现多条。packBean{}", packBean);
throw new RuntimeException("存在多条记录:" + ex.getMessage());
}
}
@Override
public T getByProperty(MdmEnumUtil.HQL_ENTITY_TYPE entityType, String propertyName, Object value) {
String queryString =
selectAll + " where " + entityType.getAlias() + "." + propertyName + "= :" + entityType.getAlias() + "_" + propertyName;
try {
List<T> list = entityManager.createQuery(queryString)
.setParameter(entityType.getAlias() + "_" + propertyName, value)
.getResultList();
return list.size() != 0 ? list.get(0) : null;
} catch (NoResultException ne) {
LOGGER.error("数据不存在prop{},value{}", propertyName, value, ne);
return null;
} catch (NonUniqueResultException ex) {
LOGGER.error("查询单条记录但出现多条。prop{},value{}", propertyName, value, ex);
throw new RuntimeException("存在多条记录:" + ex.getMessage());
}
}
@Override
public T getByProperty(MdmEnumUtil.HQL_ENTITY_TYPE[] entityTypes, String[] propertyNames, Object[] values) {
if (propertyNames.length != values.length) {
throw new IllegalArgumentException("参数名的数量和参数值不匹配!propertyNames:" + propertyNames.length + ",values:" + values.length);
}
StringBuffer queryString = new StringBuffer();
queryString.append(selectAll);
int size = propertyNames.length;
if (size > 0) {
queryString.append("where 1=1 ");
}
for (int i = 0; i < size; i++) {
if (values[i] != null) {
queryString.append(
MessageFormat.format(" and {0}.{1}= :{2}_{3}"
, entityTypes[i].getAlias()
, propertyNames[i]
, entityTypes[i].getAlias()
, propertyNames[i]
)
);
}
}
Query queryObject = entityManager.createQuery(queryString.toString());
for (int i = 0; i < size; i++) {
if (values[i] != null) {
queryObject.setParameter(entityTypes[i].getAlias() + "_" + propertyNames[i], values[i]);
}
}
try {
List<T> list = queryObject.getResultList();
return list.size() != 0 ? list.get(0) : null;
} catch (NoResultException ne) {
LOGGER.error("数据不存在", ne);
return null;
} catch (NonUniqueResultException ex) {
LOGGER.error("查询单条记录,但出现多条。", ex);
throw new RuntimeException("存在多条记录:" + ex.getMessage());
}
}
@Override
public int listCount() {
try {
Long count = entityManager.createQuery(selectCount, Long.class).getSingleResult();
return count == null ? 0 : count.intValue();
} catch (NoResultException e) {
return 0;
}
}
@Override
public int findByPropertyCount(MdmEnumUtil.HQL_ENTITY_TYPE entityType, String propertyName, Object value) {
try {
String queryString = selectCount + " where " + entityType.getAlias() + "." + propertyName
+ "= :" + entityType.getAlias() + "_" + propertyName;
Long count = entityManager.createQuery(queryString, Long.class)
.setParameter(entityType.getAlias() + "_" + propertyName, value)
.getSingleResult();
return count == null ? 0 : count.intValue();
} catch (NoResultException e) {
return 0;
}
}
@Override
public int findByPropertyCount(MdmEnumUtil.HQL_ENTITY_TYPE[] entityTypes, String[] propertyNames, Object[] values) {
if (propertyNames.length != values.length) {
throw new IllegalArgumentException("参数名的数量和参数值不匹配!propertyNames:" + propertyNames.length + ",values:" + values.length);
}
StringBuffer queryString = new StringBuffer();
queryString.append("select count(distinct model) from " + masterClass.getName() + " as model");
int size = propertyNames.length;
if (size > 0) {
queryString.append(" where 1=1 ");
}
for (int i = 0; i < size; i++) {
if (values[i] != null) {
queryString.append(
MessageFormat.format(" and {0}.{1}= :{2}_{3}"
, entityTypes[i].getAlias()
, propertyNames[i]
, entityTypes[i].getAlias()
, propertyNames[i]
)
);
}
}
Query queryObject = entityManager.createQuery(queryString.toString(), Long.class);
for (int i = 0; i < size; i++) {
if (values[i] != null) {
queryObject.setParameter(propertyNames[i], values[i]);
}
}
try {
Long count = (Long) queryObject.getSingleResult();
return count == null ? 0 : count.intValue();
} catch (NoResultException e) {
return 0;
}
}
@Override
public List<T> findByPropertyPage(MdmEnumUtil.HQL_ENTITY_TYPE entityType, String propertyName, Object value, String orderByStuff, Pager pager) {
if (pager.getTotalRows() > 0) {
String queryString = selectAll + " where " + entityType.getAlias() + "." + propertyName + "= :" + entityType.getAlias() + "_" + propertyName + " " + orderByStuff;
return entityManager.createQuery(queryString)
.setParameter(entityType.getAlias() + "_" + propertyName, value)
.getResultList();
} else {
return new ArrayList<>();
}
}
@Override
public List<T> findByPropertyPage(MdmEnumUtil.HQL_ENTITY_TYPE[] entityTypes, String[] propertyNames, Object[] values,
String orderByStuff, Pager pager) {
if (pager.getTotalRows() > 0) {
if (propertyNames.length != values.length) {
throw new IllegalArgumentException("参数名的数量和参数值不匹配!propertyNames:" + propertyNames.length + ",values:" + values.length);
}
StringBuffer queryString = new StringBuffer();
queryString.append(selectAll);
int size = propertyNames.length;
if (size > 0) {
queryString.append("where 1=1 ");
}
for (int i = 0; i < size; i++) {
if (values[i] != null) {
queryString.append(
MessageFormat.format(" and {0}.{1}= :{2}_{3}"
, entityTypes[i].getAlias()
, propertyNames[i]
, entityTypes[i].getAlias()
, propertyNames[i]
)
);
}
}
if (orderByStuff != null && orderByStuff.length() > 0) {
queryString.append(orderByStuff);
}
Query queryObject = entityManager.createQuery(queryString.toString());
for (int i = 0; i < size; i++) {
queryObject.setParameter(entityTypes[i].getAlias() + "_" + propertyNames[i], values[i]);
}
return queryObject.setFirstResult(pager.getStartRow()).setMaxResults(pager.getPageSize()).getResultList();
} else {
return new ArrayList<>();
}
}
@Override
public List<T> findByHqlWhere(DdlPackMdmModelBean packBean) {
Query query = entityManager.createQuery(selectAll + " where 1=1 " + packBean.getPackedHql());
for (int i = 0; i < packBean.getKeyList().size(); i++) {
query.setParameter(
packBean.getEntityTypeList().get(i).getAlias() + "_" + packBean.getKeyList().get(i),
packBean.getValueList().get(i)
);
}
return query.getResultList();
}
@Override
public List<T> findByHqlWhere(String hqlWhere, MdmEnumUtil.HQL_ENTITY_TYPE[] entityTypes, String[] propertyNames, Object[] values, String orderByStuff) {
if (propertyNames.length != values.length) {
throw new IllegalArgumentException("参数名的数量和参数值不匹配!propertyNames:"
+ propertyNames.length + ",values:" + values.length);
}
StringBuffer queryString = new StringBuffer();
queryString.append(selectAll + " as where 1=1 ");
if (hqlWhere != null && hqlWhere.length() > 0) {
queryString.append(hqlWhere);
}
int size = propertyNames.length;
for (int i = 0; i < size; i++) {
if (propertyNames[i] != null) {
queryString.append(
MessageFormat.format(" and {0}.{1}= :{2}_{3}"
, entityTypes[i].getAlias()
, propertyNames[i]
, entityTypes[i].getAlias()
, propertyNames[i]
)
);
}
}
queryString.append("" + orderByStuff);
Query queryObject = entityManager.createQuery(queryString.toString());
for (int i = 0; i < size; i++) {
if (values[i] != null) {
queryObject.setParameter(entityTypes[i].getAlias() + "_" + propertyNames[i], values[i]);
}
}
return queryObject.getResultList();
}
@Override
public int findByHqlWhereCount(String hqlWhere, MdmEnumUtil.HQL_ENTITY_TYPE[] entityTypes, String[] propertyNames, Object[] values) {
if (propertyNames.length != values.length) {
throw new IllegalArgumentException("参数名的数量和参数值不匹配!propertyNames:" + propertyNames.length + ",values:" + values.length);
}
StringBuffer queryString = new StringBuffer();
queryString.append(selectCount + " where 1=1 ");
if (hqlWhere != null && hqlWhere.length() > 0) {
queryString.append(hqlWhere);
}
int size = propertyNames.length;
for (int i = 0; i < size; i++) {
if (values[i] != null) {
queryString.append(
MessageFormat.format(" and {0}.{1}= :{2}_{3}"
, entityTypes[i].getAlias()
, propertyNames[i]
, entityTypes[i].getAlias()
, propertyNames[i]
)
);
}
}
Query queryObject = entityManager.createQuery(queryString.toString());
for (int i = 0; i < size; i++) {
if (values[i] != null) {
queryObject.setParameter(entityTypes[i].getAlias() + "_" + propertyNames[i], values[i]);
}
}
try {
Long count = entityManager.createQuery(queryString.toString(), Long.class).getSingleResult();
return count == null ? 0 : count.intValue();
} catch (NoResultException e) {
return 0;
}
}
@Override
public List<T> findByHqlWherePage(String hqlWhere, Pager pager, MdmEnumUtil.HQL_ENTITY_TYPE[] entityTypes, String[] propertyNames, Object[] values, String orderByStuff) {
if (pager.getTotalRows() > 0) {
if (propertyNames.length != values.length) {
throw new IllegalArgumentException("参数名的数量和参数值不匹配!propertyNames:" + propertyNames.length + ",values:" + values.length);
}
StringBuffer queryString = new StringBuffer();
queryString.append(selectAll + " where 1=1 ");
if (hqlWhere != null && hqlWhere.length() > 0) {
queryString.append(hqlWhere);
}
int size = propertyNames.length;
for (int i = 0; i < size; i++) {
if (values[i] != null) {
queryString.append(
MessageFormat.format(" and {0}.{1}= :{2}_{3}"
, entityTypes[i].getAlias()
, propertyNames[i]
, entityTypes[i].getAlias()
, propertyNames[i]
)
);
}
}
queryString.append(" " + orderByStuff);
Query queryObject = entityManager.createQuery(queryString.toString()).setFirstResult(pager.getStartRow()).setMaxResults(pager.getPageSize());
for (int i = 0; i < size; i++) {
if (values[i] != null) {
queryObject.setParameter(entityTypes[i].getAlias() + "_" + propertyNames[i], values[i]);
}
}
return queryObject.getResultList();
} else {
return new ArrayList<>();
}
}
@Override
public List<T> findByHqlWherePage(DdlPackMdmModelBean packBean, Pager pager) {
if (pager.getTotalRows() > 0) {
Query query = entityManager.createQuery(selectAll + " where 1=1 " + packBean.getPackedHql());
for (int i = 0; i < packBean.getKeyList().size(); i++) {
query.setParameter(
packBean.getEntityTypeList().get(i).getAlias() + "." + packBean.getKeyList().get(i),
packBean.getValueList().get(i)
);
}
return query.setFirstResult(pager.getStartRow())
.setMaxResults(pager.getPageSize())
.getResultList();
} else {
return new ArrayList<>();
}
}
@Override
public int findByHqlWhereCount(DdlPackMdmModelBean packBean) {
StringBuffer queryString = new StringBuffer();
queryString.append(selectCount + " where 1=1 " + packBean.getWhereAppend());
Query query = entityManager.createQuery(queryString.toString(), Long.class);
for (int i = 0; i < packBean.getKeyList().size(); i++) {
query.setParameter(
packBean.getEntityTypeList().get(i).getAlias() + "." + packBean.getKeyList().get(i),
packBean.getValueList().get(i)
);
}
try {
Long count = (Long) query.getSingleResult();
return count == null ? 0 : count.intValue();
} catch (NoResultException e) {
return 0;
}
}
@Override
public int findByHqlCount(String hql) {
try {
Long count = entityManager.createQuery(hql, Long.class).getSingleResult();
return count == null ? 0 : count.intValue();
} catch (NoResultException e) {
return 0;
}
}
@Override
public int findByHqlCount(String hql, MdmEnumUtil.HQL_ENTITY_TYPE[] entityTypes, String[] paramName, Object[] paramValue) {
Query queryObject = entityManager.createQuery(hql, Integer.class);
for (int i = 0; i < paramName.length; i++) {
if (paramValue[i] != null) {
queryObject.setParameter(entityTypes[i].getAlias() + "_" + paramName[i], paramValue[i]);
}
}
try {
return (int) queryObject.getSingleResult();
} catch (NoResultException e) {
return 0;
}
}
@Override
public List<T> findByHqlPage(DdlPackMdmModelBean packBean, Pager pager) {
if (pager.getTotalRows() > 0) {
Query query = entityManager.createQuery(selectAll + " where 1=1 " + packBean.getPackedHql());
for (int i = 0; i < packBean.getKeyList().size(); i++) {
query.setParameter(
packBean.getEntityTypeList().get(i).getAlias() + "." + packBean.getKeyList().get(i),
packBean.getValueList().get(i)
);
}
return query.setFirstResult(pager.getStartRow())
.setMaxResults(pager.getPageSize())
.getResultList();
} else {
return new ArrayList<>();
}
}
@Override
public List<T> findByHqlPage(String hql, Pager pager, MdmEnumUtil.HQL_ENTITY_TYPE[] entityTypes, String[] paramName, Object[] paramValue) {
if (pager.getTotalRows() > 0) {
Query queryObject = entityManager.createQuery(hql);
for (int i = 0; i < paramName.length; i++) {
if (paramValue[i] != null) {
queryObject.setParameter(entityTypes[i].getAlias() + "_" + paramName[i], paramValue[i]);
}
}
return queryObject.setFirstResult(pager.getStartRow())
.setMaxResults(pager.getPageSize())
.getResultList();
} else {
return new ArrayList<>();
}
}
@Override
public double findByHqlDouble(DdlPackMdmModelBean packBean) {
try {
Query query = entityManager.createQuery(packBean.getPackedHqlAll(), Double.class);
for (int i = 0; i < packBean.getKeyList().size(); i++) {
query.setParameter(
packBean.getEntityTypeList().get(i).getAlias() + "." + packBean.getKeyList().get(i),
packBean.getValueList().get(i)
);
}
Double result = (Double) query.getSingleResult();
return result == null ? 0 : result;
} catch (NoResultException e) {
return 0;
}
}
@Override
public long findByHqlLong(DdlPackMdmModelBean packBean) {
try {
Query query = entityManager.createQuery(selectAll + " where 1=1 " + packBean.getPackedHql(), Long.class);
for (int i = 0; i < packBean.getKeyList().size(); i++) {
query.setParameter(
packBean.getEntityTypeList().get(i).getAlias() + "." + packBean.getKeyList().get(i),
packBean.getValueList().get(i)
);
}
return (long) query.getSingleResult();
} catch (NoResultException e) {
return 0;
}
}
@Override
public List<T> findByHqlTopWhere(DdlPackMdmModelBean packBean, int topNum) {
Query query = entityManager.createQuery(selectAll + " where 1=1 " + packBean.getPackedHql());
for (int i = 0; i < packBean.getKeyList().size(); i++) {
query.setParameter(
packBean.getEntityTypeList().get(i).getAlias() + "." + packBean.getKeyList().get(i),
packBean.getValueList().get(i)
);
}
return query.setFirstResult(0).setMaxResults(topNum).getResultList();
}
@Override
public List<Object[]> findByHqlObjects(String hql) {
return entityManager.createQuery(hql).getResultList();
}
@Override
public List<Object[]> findByHqlObjects(String hql, MdmEnumUtil.HQL_ENTITY_TYPE[] entityTypes, String[] paramName,
Object[] paramValue) {
Query queryObject = entityManager.createQuery(hql);
for (int i = 0; i < paramName.length; i++) {
if (paramValue[i] != null) {
queryObject.setParameter(entityTypes[i].getAlias() + "_" + paramName[i], paramValue[i]);
}
}
return queryObject.getResultList();
}
@Override
public List<Object[]> findByHqlPageObjects(String hql, Pager pager) {
if (pager.getTotalRows() > 0) {
return entityManager.createQuery(hql).setFirstResult(pager.getStartRow()).setMaxResults(pager.getPageSize()).getResultList();
} else {
return new ArrayList<Object[]>();
}
}
@Override
public List<Object[]> findByHqlPageObjects(String hql, Pager pager, MdmEnumUtil.HQL_ENTITY_TYPE[] entityTypes, String[] propertyNames, Object[] values) {
if (pager.getTotalRows() > 0) {
Query queryObject = entityManager.createQuery(hql);
for (int i = 0; i < propertyNames.length; i++) {
if (propertyNames[i] != null) {
queryObject.setParameter(entityTypes[i].getAlias() + "_" + propertyNames[i], values[i]);
}
}
return queryObject.setFirstResult(pager.getStartRow()).setMaxResults(pager.getPageSize()).getResultList();
} else {
return new ArrayList<Object[]>();
}
}
@Override
public List<Object[]> findBySqlObjList(String sql) {
return entityManager.createNativeQuery(sql).getResultList();
}
@Override
public List<Object[]> findBySqlObjListByPager(String sql, Pager pager) {
if (pager.getTotalRows() > 0) {
return entityManager.createNativeQuery(sql)
.setFirstResult(pager.getStartRow())
.setMaxResults(pager.getPageSize())
.getResultList();
} else {
return new ArrayList<Object[]>();
}
}
/************** 部分业务 *************/
private String getNowTime(boolean needSecond) {
return needSecond ? getNowTime("yyyy-MM-dd HH:mm:ss") : getNowTime("yyyy-MM-dd HH:mm");
}
private String getNowTime(String format) {
String dateTime;
try {
dateTime = (new SimpleDateFormat(format)).format(new Date());
} catch (Exception e) {
dateTime = (new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")).format(new Date());
}
return dateTime;
}
@Override
public boolean isExitByProperty(MdmEnumUtil.HQL_ENTITY_TYPE entityType, String propertyName, Object value) {
//大于0存在
return findByPropertyCount(entityType, propertyName, value) > 0;
}
@Override
public boolean isExitByProperty(MdmEnumUtil.HQL_ENTITY_TYPE[] entityTypes, String[] propertyNames, Object[] values) {
return findByPropertyCount(entityTypes, propertyNames, values) > 0;
}
@Override
public boolean isExitByHqlWhere(String hqlWhere, MdmEnumUtil.HQL_ENTITY_TYPE[] entityTypes, String[] propertyNames, Object[] values) {
return findByHqlWhereCount(hqlWhere, entityTypes, propertyNames, values) > 0;
}
@Override
public boolean isExitByHql(DdlPackMdmModelBean packBean) {
return findByHqlWhereCount(packBean) > 0;
}
}

@ -0,0 +1,27 @@
package cn.estsh.i3plus.pojo.mdm.model;
import cn.estsh.i3plus.pojo.base.common.Pager;
import lombok.Data;
/**
* @Description :
* @Reference :
* @Author : yunhao
* @CreateDate : 2020-05-29 10:23
* @Modify:
**/
@Data
public class MdmPagerQueryModel <T> {
/**
*
*/
private T bean;
/**
*
*/
private Pager pager;
}

@ -0,0 +1,22 @@
package cn.estsh.i3plus.pojo.mdm.model.core;
import cn.estsh.i3plus.pojo.mdm.bean.base.BaseMdmBusiModelBean;
import cn.estsh.i3plus.pojo.mdm.bean.busi.core.MdmGearCoreBusiExtd;
import cn.estsh.i3plus.pojo.mdm.bean.master.MdmGear;
import io.swagger.annotations.ApiModel;
import lombok.Data;
/**
* @Description : 齿-model
* @Reference :
* @Author : yunhao
* @CreateDate : 2020-05-12 18:09
* @Modify:
**/
@Data
@ApiModel("齿轮平台业务model")
public class MdmGearCoreBusiModel extends BaseMdmBusiModelBean<MdmGear,MdmGearCoreBusiExtd> {
public MdmGearCoreBusiModel(MdmGear mdmMasterBean, MdmGearCoreBusiExtd mdmBusiBean) {
super(mdmMasterBean, mdmBusiBean);
}
}

@ -0,0 +1,21 @@
package cn.estsh.i3plus.pojo.mdm.modelrepository.core;
import cn.estsh.i3plus.pojo.mdm.bean.busi.core.MdmGearCoreBusiExtd;
import cn.estsh.i3plus.pojo.mdm.bean.master.MdmGear;
import cn.estsh.i3plus.pojo.mdm.jpa.dao.MdmBusiModelRepository;
import cn.estsh.i3plus.pojo.mdm.jpa.daoimpl.MdmBusiModelRepositoryImpl;
import cn.estsh.i3plus.pojo.mdm.model.core.MdmGearCoreBusiModel;
import org.springframework.stereotype.Component;
/**
* @Description :
* @Reference :
* @Author : yunhao
* @CreateDate : 2020-05-25 11:42
* @Modify:
**/
@Component
public class MdmGearCoreRepository
extends MdmBusiModelRepositoryImpl<MdmGearCoreBusiModel, MdmGear, MdmGearCoreBusiExtd>
implements MdmBusiModelRepository<MdmGearCoreBusiModel, MdmGear, MdmGearCoreBusiExtd> {
}

@ -0,0 +1,51 @@
package cn.estsh.i3plus.pojo.mdm.repository;
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 cn.estsh.i3plus.pojo.mdm.bean.base.BaseMdmBean;
import cn.estsh.i3plus.pojo.mdm.bean.master.MdmGear;
import java.util.List;
/**
* @Description : HQL
* @Reference :
* @Author : yunhao
* @CreateDate : 2020-05-20 15:23
* @Modify:
**/
public class MdmHqlPack {
public static DdlPackBean getMdmPackBean(BaseMdmBean mdmBean) {
DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(mdmBean);
DdlPreparedPack.getNumEqualPack(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue(), "isMdmPublished", ddlPackBean);
return ddlPackBean;
}
public static DdlPackBean getMdmPackBean() {
DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean();
DdlPreparedPack.getNumEqualPack(CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue(), "isMdmPublished", ddlPackBean);
return ddlPackBean;
}
public static DdlPackBean packHqlIdList(List<Long> idList) {
DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean();
DdlPreparedPack.getInPackList(idList,"id",ddlPackBean);
return ddlPackBean;
}
public static DdlPackBean packHqlMdmGear(MdmGear mdmGear) {
DdlPackBean ddlPackBean = getMdmPackBean(mdmGear);
DdlPreparedPack.getNumEqualPack(mdmGear.getId(),"id",ddlPackBean);
DdlPreparedPack.getStringLikerPack(mdmGear.getName(),"name",ddlPackBean);
DdlPreparedPack.timeBuilder(mdmGear.getCreateDatetime(),"createDatetime",ddlPackBean,false,true);
return ddlPackBean;
}
}

@ -0,0 +1,16 @@
package cn.estsh.i3plus.pojo.mdm.repository.busi.core;
import cn.estsh.i3plus.pojo.base.jpa.dao.BaseRepository;
import cn.estsh.i3plus.pojo.mdm.bean.busi.core.MdmGearCoreBusiExtd;
import org.springframework.stereotype.Repository;
/**
* @Description :
* @Reference :
* @Author : yunhao
* @CreateDate : 2020-05-15 16:26
* @Modify:
**/
@Repository
public interface MdmGearCoreBusiModelRepository extends BaseRepository<MdmGearCoreBusiExtd, Long> {
}

@ -0,0 +1,16 @@
package cn.estsh.i3plus.pojo.mdm.repository.master;
import cn.estsh.i3plus.pojo.base.jpa.dao.BaseRepository;
import cn.estsh.i3plus.pojo.mdm.bean.master.MdmGear;
import org.springframework.stereotype.Repository;
/**
* @Description :
* @Reference :
* @Author : yunhao
* @CreateDate : 2020-05-15 16:26
* @Modify:
**/
@Repository
public interface MdmGearRepository extends BaseRepository<MdmGear, Long> {
}

@ -0,0 +1,699 @@
package cn.estsh.i3plus.pojo.mdm.sqlpack;
import cn.estsh.i3plus.pojo.base.bean.BaseBean;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.enumutil.MdmEnumUtil;
import cn.estsh.i3plus.pojo.mdm.bean.base.DdlPackMdmModelBean;
import org.apache.commons.lang3.StringUtils;
import java.text.SimpleDateFormat;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
/**
* @Description : hqlHqlPacksql
* example name = :name
* @Reference :
* @Author : alwaysfrin
* @CreateDate : 2019-03-29
* @Modify:
**/
public class DdlMdmModelPreparedPack {
/**
*
*
* @param startDate
* @param endDate
* @param columnName HQL
* @param packBean HQL
* @param isShowTime
*/
public static void timeBuilder(MdmEnumUtil.HQL_ENTITY_TYPE entityType, String startDate, String endDate, String columnName,
DdlPackMdmModelBean packBean, boolean isShowTime) {
if (startDate == null || startDate.trim().length() == 0) {
startDate = "1900-01-01";
} else {
startDate = startDate.trim();
}
if (isShowTime && startDate.trim().length() <= 11) {
startDate += " 00:00:00";
}
if (endDate == null || endDate.trim().length() == 0) {
endDate = "2100-01-01";
} else {
endDate = endDate.trim();
}
if (isShowTime && endDate.trim().length() <= 11) {
endDate += " 23:59:59";
}
packBean.addColumnQuery(entityType, columnName
, " and " + entityType.getAlias() + "." + columnName + " >= :" + entityType.getAlias() + "_" + columnName
, startDate);
packBean.addColumnQuery(entityType, "s_" + columnName
, " and " + entityType.getAlias() + "." + columnName + " <= :" + entityType.getAlias() + "_s_" + columnName
, endDate);
}
/**
*
*
* @param startDate
* @param endDate
* @param columnName
* @param isLeftContain
* @param isRightContain
* @param packBean HQL
*/
public static void timeBuilder(MdmEnumUtil.HQL_ENTITY_TYPE entityType, String startDate, String endDate, String columnName, boolean isLeftContain, boolean isRightContain, DdlPackMdmModelBean packBean) {
if (isLeftContain) {
packBean.addColumnQuery(entityType, columnName, " and " + entityType.getAlias() + "." + columnName + " >= :" + entityType.getAlias() + "_" + columnName, startDate.trim());
} else {
packBean.addColumnQuery(entityType, columnName, " and " + entityType.getAlias() + "." + columnName + " >= :" + entityType.getAlias() + "_" + columnName, startDate.trim());
}
if (isRightContain) {
packBean.addColumnQuery(entityType, "s_" + columnName, " and " + entityType.getAlias() + "." + columnName + " <= :" + entityType.getAlias() + "_s_" + columnName, endDate.trim());
} else {
packBean.addColumnQuery(entityType, "s_" + columnName, " and " + entityType.getAlias() + "." + columnName + " <= :" + entityType.getAlias() + "_s_" + columnName, endDate.trim());
}
}
/**
*
*
* @param date
* @param columnName HQL
* @param packBean HQL
* @param showTaday true:false:
* @param isShowTime
*/
public static void timeBuilder(MdmEnumUtil.HQL_ENTITY_TYPE entityType, String date, String columnName, DdlPackMdmModelBean packBean, Boolean showTaday, boolean isShowTime) {
if (date != null && date.trim().length() > 0) {
String today = (new SimpleDateFormat("yyyy-MM-dd")).format(new Date());
if (date.trim().length() > 0 && (date.length() == 1 || ",".equals(date))) {
//只有一个逗号
date = "";
}
String[] time = date.split(",");
if (time.length == 1) {
//只有开始日期,没有结束日期
packBean.addColumnQuery(entityType, columnName, " and " + entityType.getAlias() + "." + columnName + " like :" + entityType.getAlias() + "_" + columnName, "%" + time[0] + "%");
} else if (time.length == 2 && ((time[0] != null && time[0].trim().length() > 0)
|| (time[1] != null & time[1].trim().length() > 0))) {
if (time[0] == null || time[0].trim().length() == 0) {
time[0] = "1900-01-01";
} else {
time[0] = time[0].trim();
}
if (isShowTime && time[0].trim().length() <= 11) {
time[0] += " 00:00:00";
}
if (time[1] == null || time[1].trim().length() == 0) {
time[1] = "2100-01-01";
} else {
time[1] = time[1].trim();
}
if (isShowTime && time[1].trim().length() <= 11) {
time[1] += " 23:59:59";
}
packBean.addColumnQuery(entityType, columnName, " and " + entityType.getAlias() + "." + columnName + " >= :" + entityType.getAlias() + "_" + columnName, time[0]);
packBean.addColumnQuery(entityType, "s_" + columnName, " and " + entityType.getAlias() + "." + columnName + " <= :" + entityType.getAlias() + "_s_" + columnName, time[1]);
} else {
if (showTaday) {
if (isShowTime) {
packBean.addColumnQuery(entityType, columnName, " and " + entityType.getAlias() + "." + columnName + " >= :" + entityType.getAlias() + "_" + columnName, today + " 00:00:00");
packBean.addColumnQuery(entityType, "s_" + columnName, " and " + entityType.getAlias() + "." + columnName + " <= :" + entityType.getAlias() + "_s_" + columnName, today + " 23:59:59");
} else {
packBean.addColumnQuery(entityType, columnName, " and " + entityType.getAlias() + "." + columnName + " " +">= :" + entityType.getAlias() + "_" + columnName,today);
packBean.addColumnQuery(entityType, "s_" + columnName, " and " + entityType.getAlias() + "." + columnName + " <= :" + entityType.getAlias() + "_s_" + columnName, today);
}
}
}
}
}
/**
*
*
* @param date
* @param startColumnName HQL
* @param endColumnName HQL
* @param packBean HQL
* @param isShowTime
*/
public static void getTimeBetweenCol(MdmEnumUtil.HQL_ENTITY_TYPE entityType, String date, String startColumnName, String endColumnName,
DdlPackMdmModelBean packBean, boolean isShowTime) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
if (date == null || date.trim().length() == 0) {
date = sdf.format(new Date());
}
if (!isShowTime) {
date = date.substring(0, 10);
packBean.addColumnQuery(entityType, null, " and '" + date + "' between substring(" + entityType.getAlias() + "." + startColumnName
+ ",1,10) and substring(" + entityType.getAlias() + "." + endColumnName + ",1,10)", null);
return;
} else if (date.trim().length() <= 11) {
date += " 00:00:00";
}
packBean.addColumnQuery(entityType, null, " and '" + date + "' between " + entityType.getAlias() + "." + startColumnName
+ " and " + entityType.getAlias() + "." + endColumnName, null);
}
/**
* Stringorder by
*
* @param columnName
* @param packBean
*/
public static void getOrderByPack(MdmEnumUtil.HQL_ENTITY_TYPE[] entityTypes, Object order[], String[] columnName,
DdlPackMdmModelBean packBean) {
String sqlStr = "";
String orderByStr = "";
for (int i = 0; i < order.length; i++) {
if (order[i] != null && order[i].toString().trim().length() > 0) {
if (Integer.parseInt(order[i].toString()) == 1) {
order[i] = "asc";
} else {
order[i] = "desc";
}
if (columnName[i].indexOf(" model.") == -1) {
sqlStr += entityTypes[i].getAlias() + "." + columnName[i];
} else {
sqlStr += columnName[i];
}
sqlStr += " " + order[i].toString() + ",";
}
}
if (sqlStr.length() > 0 && sqlStr.lastIndexOf(",") == sqlStr.length() - 1) {
sqlStr = sqlStr.substring(0, sqlStr.length() - 1);
orderByStr = " order by " + sqlStr;
}
packBean.setOrderByStr(orderByStr);
}
/**
*
*/
public static void getOrderDefault(BaseBean bean) {
if (bean != null && StringUtils.isBlank(bean.getOrderByParam())) {
bean.setOrderByParam("modifyDatetime");
bean.setAscOrDesc(CommonEnumUtil.ASC_OR_DESC.DESC.getValue());
}
}
/**
* Stringlike
*
* @param val
* @param columnName
* @param packBean
*/
public static void getStringLikerPack(MdmEnumUtil.HQL_ENTITY_TYPE entityType, String val, String columnName, DdlPackMdmModelBean packBean) {
if (val != null && val.trim().length() > 0) {
packBean.addColumnQuery(entityType, columnName, " and " + entityType.getAlias() + "." + columnName + " like :" + entityType.getAlias() + "_" + columnName, "%" + val + "%");
}
}
/**
* Stringlike
*
* @param val
* @param columnName
* @param packBean
*/
public static void getStringLikerPackOr(MdmEnumUtil.HQL_ENTITY_TYPE entityType, String val, String columnName, DdlPackMdmModelBean packBean) {
if (val != null && val.trim().length() > 0) {
packBean.addColumnQuery(entityType, columnName, " or " + entityType.getAlias() + "." + columnName + " like :" + entityType.getAlias() + "_" + columnName, "%" + val + "%");
}
}
/**
* Stringlike()
*
* @param val
* @param columnName
* @param packBean
*/
public static void getStringRightLikerPack(MdmEnumUtil.HQL_ENTITY_TYPE entityType, String val, String columnName, DdlPackMdmModelBean packBean) {
if (val != null && val.trim().length() > 0) {
packBean.addColumnQuery(entityType, columnName, " and " + entityType.getAlias() + "." + columnName + " like :" + entityType.getAlias() + "_" + columnName, val + "%");
}
}
/**
* Stringlike()
*
* @param val
* @param columnName
* @param packBean
*/
public static void getStringLeftLikerPack(MdmEnumUtil.HQL_ENTITY_TYPE entityType, String val, String columnName, DdlPackMdmModelBean packBean) {
if (val != null && val.trim().length() > 0) {
packBean.addColumnQuery(entityType, columnName, " and " + entityType.getAlias() + "." + columnName + " like :" + entityType.getAlias() + "_" + columnName, "%" + val);
}
}
/**
* Stringequal
*
* @param columnName
* @param packBean
*/
public static void getStringEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE entityType, String val, String columnName, DdlPackMdmModelBean packBean) {
if (val != null && val.trim().length() > 0) {
packBean.addColumnQuery(entityType, columnName, " and " + entityType.getAlias() + "." + columnName + " = :" + entityType.getAlias() + "_" + columnName, val);
}
}
/**
* Stringequal
*
* @param columnName
* @param packBean
*/
public static void getStringLikePack(MdmEnumUtil.HQL_ENTITY_TYPE entityType, String val, String columnName, DdlPackMdmModelBean packBean) {
if (val != null && val.trim().length() > 0) {
packBean.addColumnQuery(entityType, columnName, " and " + entityType.getAlias() + "." + columnName + " like :" + entityType.getAlias() + "_" + columnName, val);
}
}
/**
* String
*
* @param columnName
* @param packBean
*/
public static void getStringNoEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE entityType, String val, String columnName, DdlPackMdmModelBean packBean) {
if (val != null && val.trim().length() > 0) {
packBean.addColumnQuery(entityType, columnName, " and " + entityType.getAlias() + "." + columnName + " <> :" + entityType.getAlias() + "_" + columnName, val);
}
}
/**
* Stringequal
*
* @param columnName
* @param packBean
*/
public static void getStringNotNullPack(MdmEnumUtil.HQL_ENTITY_TYPE entityType, String columnName, DdlPackMdmModelBean packBean) {
packBean.addColumnQuery(entityType, null, " and " + entityType.getAlias() + "." + columnName + " is not null", null);
}
/**
* Stringequal
*
* @param columnName
* @param packBean
*/
public static void getStringNotBlanklPack(MdmEnumUtil.HQL_ENTITY_TYPE entityType, String columnName, DdlPackMdmModelBean packBean) {
packBean.addColumnQuery(entityType, null, " and (" + entityType.getAlias() + "." + columnName + " is not null and " + entityType.getAlias() + "." + columnName + " !='')", null);
}
/**
* Stringequal
*
* @param columnName
* @param packBean
*/
public static void getStringEqualPackOr(MdmEnumUtil.HQL_ENTITY_TYPE entityType, String val, String columnName, DdlPackMdmModelBean packBean) {
if (val != null && val.trim().length() > 0) {
packBean.addColumnQuery(entityType, columnName, " or " + entityType.getAlias() + "." + columnName + " = :" + entityType.getAlias() + "_" + columnName, val);
}
}
/**
* longintequal
*
* @param columnName
* @param packBean
*/
public static void getNumEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE entityType, Object data, String columnName, DdlPackMdmModelBean packBean) {
if (data != null && Long.parseLong(data.toString()) > 0) {
packBean.addColumnQuery(entityType, columnName, " and " + entityType.getAlias() + "." + columnName + " = :" + entityType.getAlias() + "_" + columnName, data);
}
}
/**
*
*
* @param firstColumnName
* @param packBean
*/
public static void getNotEqueals(MdmEnumUtil.HQL_ENTITY_TYPE entityType, String firstColumnName, String twoColumnName, DdlPackMdmModelBean packBean) {
packBean.addColumnQuery(entityType, null, " and UPPER(" + entityType.getAlias() + "." + firstColumnName + ")!= UPPER(" + entityType.getAlias() + "." + twoColumnName + ")", null);
}
/**
* longintequal
*
* @param columnName
* @param packBean
*/
public static void getNegativeNumEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE entityType, Object data, String columnName, DdlPackMdmModelBean packBean) {
if (data != null) {
packBean.addColumnQuery(entityType, columnName, " and " + entityType.getAlias() + "." + columnName + " = :" + entityType.getAlias() + "_" + columnName, data);
}
}
/**
* longintequal
*
* @param columnName
* @param packBean
*/
public static void getNumEqualPackOr(MdmEnumUtil.HQL_ENTITY_TYPE entityType, Object data, String columnName, DdlPackMdmModelBean packBean) {
if (data != null && Long.parseLong(data.toString()) > 0) {
packBean.addColumnQuery(entityType, columnName, " or " + entityType.getAlias() + "." + columnName + " = :" + entityType.getAlias() + "_" + columnName, data);
}
}
/**
* longintequal
*
* @param columnName
* @param packBean
*/
public static void getNumEqualPackOverZero(MdmEnumUtil.HQL_ENTITY_TYPE entityType, Object data, String columnName, DdlPackMdmModelBean packBean) {
if (data != null && Double.parseDouble(data.toString()) > 0) {
packBean.addColumnQuery(entityType, columnName, " and " + entityType.getAlias() + "." + columnName + " = :" + entityType.getAlias() + "_" + columnName, data);
}
}
/**
* longintequal
*
* @param columnName
* @param packBean
*/
public static void getNumWithZeroEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE entityType, Object data, String columnName, DdlPackMdmModelBean packBean) {
if (data != null && Double.parseDouble(data.toString()) >= 0) {
packBean.addColumnQuery(entityType, columnName, " and " + entityType.getAlias() + "." + columnName + " = :" + entityType.getAlias() + "_" + columnName, data);
}
}
/**
* String
*
* @param columnName
* @param packBean
*/
public static void getStringBiggerPack(MdmEnumUtil.HQL_ENTITY_TYPE entityType, Object data, String columnName, DdlPackMdmModelBean packBean) {
if (data != null && !StringUtils.isEmpty(String.valueOf(data))) {
packBean.addColumnQuery(entityType, columnName, " and " + entityType.getAlias() + "." + columnName + " >= :" + entityType.getAlias() + "_" + columnName, data);
}
}
/**
* String
*
* @param columnName
* @param packBean
*/
public static void getStringBiggerNotEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE entityType, Object data, String columnName, DdlPackMdmModelBean packBean) {
if (data != null && !StringUtils.isEmpty(String.valueOf(data))) {
packBean.addColumnQuery(entityType, columnName, " and " + entityType.getAlias() + "." + columnName + " > :" + entityType.getAlias() + "_" + columnName, data);
}
}
/**
* String
*
* @param columnName
* @param packBean
*/
public static void getStringSmallerPack(MdmEnumUtil.HQL_ENTITY_TYPE entityType, Object data, String columnName, DdlPackMdmModelBean packBean) {
if (data != null && !StringUtils.isEmpty(String.valueOf(data))) {
packBean.addColumnQuery(entityType, "s_" + columnName, " and " + entityType.getAlias() + "." + columnName + " <= :" + entityType.getAlias() + "_s_" + columnName, data);
}
}
/**
* String
*
* @param columnName
* @param packBean
*/
public static void getStringSmallerNotEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE entityType, Object data, String columnName, DdlPackMdmModelBean packBean) {
if (data != null && !StringUtils.isEmpty(String.valueOf(data))) {
packBean.addColumnQuery(entityType, "s_" + columnName, " and " + entityType.getAlias() + "." + columnName + " < :" + entityType.getAlias() + "_s_" + columnName, data);
}
}
/**
* double
*
* @param columnName
* @param packBean
*/
public static void getNumberBiggerPack(MdmEnumUtil.HQL_ENTITY_TYPE entityType, Object data, String columnName, DdlPackMdmModelBean packBean) {
if (data != null && Double.parseDouble(data.toString()) > 0) {
packBean.addColumnQuery(entityType, columnName, " and " + entityType.getAlias() + "." + columnName + " > :" + entityType.getAlias() + "_" + columnName, data);
}
}
/**
* double
*
* @param columnName
* @param packBean
*/
public static void getNumberBiggerPackContainsZero(MdmEnumUtil.HQL_ENTITY_TYPE entityType, Object data, String columnName, DdlPackMdmModelBean packBean) {
if (data != null) {
packBean.addColumnQuery(entityType, columnName, " and " + entityType.getAlias() + "." + columnName + " > :" + entityType.getAlias() + "_" + columnName, data);
}
}
/**
* double
*
* @param columnName
* @param packBean
*/
public static void getNumberBiggerEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE entityType, Object data, String columnName, DdlPackMdmModelBean packBean) {
if (data != null && Double.parseDouble(data.toString()) > 0) {
packBean.addColumnQuery(entityType, columnName, " and " + entityType.getAlias() + "." + columnName + " >= :" + entityType.getAlias() + "_" + columnName, data);
}
}
/**
* double
*
* @param columnName
* @param packBean
*/
public static void getNumberSmallerPack(MdmEnumUtil.HQL_ENTITY_TYPE entityType, Object data, String columnName, DdlPackMdmModelBean packBean) {
if (data != null && Double.parseDouble(data.toString()) > 0) {
packBean.addColumnQuery(entityType, columnName, " and " + entityType.getAlias() + "." + columnName + " < :" + entityType.getAlias() + "_" + columnName, data);
}
}
/**
* double
*
* @param columnName
* @param packBean
*/
public static void getNumberSmallerEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE entityType, Object data, String columnName, DdlPackMdmModelBean packBean) {
if (data != null && Double.parseDouble(data.toString()) > 0) {
packBean.addColumnQuery(entityType, columnName, " and " + entityType.getAlias() + "." + columnName + " <= :" + entityType.getAlias() + "_" + columnName, data);
}
}
/**
* longintequal()
*
* @param columnName
* @param packBean
*/
public static void getNumNOEqualPack(MdmEnumUtil.HQL_ENTITY_TYPE entityType, Object data, String columnName, DdlPackMdmModelBean packBean) {
if (data != null) {
packBean.addColumnQuery(entityType, columnName, " and " + entityType.getAlias() + "." + columnName + " <> :" + entityType.getAlias() + "_" + columnName, data);
}
}
/**
* in
*
* @param data
* @param columnName
* @param packBean
*/
public static void getInPack(MdmEnumUtil.HQL_ENTITY_TYPE entityType, Object data, String columnName, DdlPackMdmModelBean packBean) {
if (data != null) {
packBean.addColumnQuery(entityType, "in_"+columnName,
" and " + entityType.getAlias() + "." + columnName + " in (:" + entityType.getAlias() + "_in_" + columnName + ")", data);
}
}
/**
* or
*
* @param data
* @param columnName
* @param packBean
*/
public static void getNotOrIsNull(MdmEnumUtil.HQL_ENTITY_TYPE entityType, Object data, String columnName, DdlPackMdmModelBean packBean) {
if (data != null) {
packBean.addColumnQuery(entityType, "in_"+columnName, " and (" + entityType.getAlias() + "." + columnName + " in (:" + entityType.getAlias() + "_in_" + columnName + ") " +
"or " + entityType.getAlias() + "." + columnName + " is null)", data);
}
}
/**
* in
*
* @param data
* @param columnName
* @param packBean
*/
public static void getOrInPack(MdmEnumUtil.HQL_ENTITY_TYPE entityType, String data, String columnName, DdlPackMdmModelBean packBean) {
if (data != null) {
packBean.addColumnQuery(entityType, "in_"+columnName," or " + entityType.getAlias() + "." + columnName + " in (:" + entityType.getAlias() + "_in_" + columnName + ")", data);
}
}
/**
* in String
*
* @param data
* @param columnName
* @param packBean
*/
public static void getInPackArray(MdmEnumUtil.HQL_ENTITY_TYPE entityType, Object[] data, String columnName, DdlPackMdmModelBean packBean) {
if (data != null && data.length > 0) {
packBean.addColumnQuery(entityType, "in_"+columnName, " and " + entityType.getAlias() + "." + columnName + " in (:" + entityType.getAlias() + "_in_" + columnName + ")", Arrays.asList(data));
}
}
/**
* not in String
*
* @param data
* @param columnName
* @param packBean
*/
public static void getNotInPackArray(MdmEnumUtil.HQL_ENTITY_TYPE entityType, Object[] data, String columnName, DdlPackMdmModelBean packBean) {
if (data != null && data.length > 0) {
packBean.addColumnQuery(entityType, "in_"+columnName, " and " + entityType.getAlias() + "." + columnName + " not in (:" + entityType.getAlias() + "_in_" + columnName + ")", Arrays.asList(data));
}
}
/**
* in String
*
* @param data
* @param columnName
* @param packBean
*/
public static void getInPackList(MdmEnumUtil.HQL_ENTITY_TYPE entityType, List<?> data, String columnName, DdlPackMdmModelBean packBean) {
if (data != null && data.size() > 0) {
packBean.addColumnQuery(entityType, "in_"+columnName, " and " + entityType.getAlias() + "." + columnName + " in (:" + entityType.getAlias() + "_in_" + columnName + ")", data);
}
}
/**
* not in List
*
* @param data
* @param columnName
* @param packBean
*/
public static void getNotInPackList(MdmEnumUtil.HQL_ENTITY_TYPE entityType, List<?> data, String columnName, DdlPackMdmModelBean packBean) {
if (data != null && data.size() > 0) {
packBean.addColumnQuery(entityType, "in_"+columnName, " and " + entityType.getAlias() + "." + columnName + " not in (:" + entityType.getAlias() + "_in_" + columnName + ")", data);
}
}
/**
* in String
*
* @param data
* @param columnName
* @param packBean
*/
public static void getInOrPackString(MdmEnumUtil.HQL_ENTITY_TYPE entityType, String data, String columnName, DdlPackMdmModelBean packBean) {
if (data != null && data.trim().length() > 0) {
//判断最后一位是不是逗号
if (data.lastIndexOf(",") != (data.length() - 1)) {
data += ",";
}
String[] dataArray = data.substring(0, data.length() - 1).split(",");
data = "";
for (int i = 0; i < dataArray.length; i++) {
if (i == dataArray.length - 1) {
data += "'" + dataArray[i] + "'";
} else {
data += "'" + dataArray[i] + "',";
}
}
packBean.addColumnQuery(entityType, "in_"+columnName, " or " + entityType.getAlias() + "." + columnName + " in (:" + entityType.getAlias() + "_in_" + columnName + ")", data);
}
}
/**
* in String
*
* @param data
* @param columnName
* @param packBean
*/
public static void getNotInPackString(MdmEnumUtil.HQL_ENTITY_TYPE entityType, String data, String columnName, DdlPackMdmModelBean packBean) {
if (data != null && data.trim().length() > 0) {
//判断最后一位是不是逗号
if (data.lastIndexOf(",") != (data.length() - 1)) {
data += ",";
}
String[] dataArray = data.substring(0, data.length() - 1).split(",");
data = "";
for (int i = 0; i < dataArray.length; i++) {
if (i == dataArray.length - 1) {
data += "'" + dataArray[i] + "'";
} else {
data += "'" + dataArray[i] + "',";
}
}
packBean.addColumnQuery(entityType,"in_"+columnName, " and " + entityType.getAlias() + "." + columnName + " not in (:" + entityType.getAlias() + "_in_" + columnName + ")", data);
}
}
/**
* not in
*
* @param data
* @param columnName
* @param packBean
*/
public static void getNotInPack(MdmEnumUtil.HQL_ENTITY_TYPE entityType, Object data, String columnName, DdlPackMdmModelBean packBean) {
if (data != null) {
packBean.addColumnQuery(entityType, "in_"+columnName, " and " + entityType.getAlias() + "." + columnName + " not in (:" + entityType.getAlias() + "_in_" + columnName + ")", data);
}
}
/**
*
*
* @param columnName
* @param basisType
* @return
* @see CommonEnumUtil.BASIS_TYPE
*/
public static String getOrderColConvertType(MdmEnumUtil.HQL_ENTITY_TYPE entityType, String columnName, int basisType) {
String name = " " + entityType.getAlias() + "." + columnName;
if (basisType == CommonEnumUtil.BASIS_TYPE.INT.getValue()) {
name = " cast(" + name + " as integer)";
} else if (basisType == CommonEnumUtil.BASIS_TYPE.DOUBLE.getValue()) {
name = " cast(" + name + " as decimal)";
} else if (basisType == CommonEnumUtil.BASIS_TYPE.LONG.getValue()) {
name = " cast(" + name + " as long)";
}
return name;
}
}

@ -98,4 +98,8 @@ public class IfQcOrder extends BaseBean implements Serializable {
@ApiParam("检测类型")
private Integer checkType;
@Column(name = "CUST_DELIERY_LOCATION")
@ApiParam("客户发运地")
private String custDelieryLocation;
}

@ -0,0 +1,91 @@
package cn.estsh.i3plus.pojo.mes.bean;
import cn.estsh.i3plus.pojo.base.annotation.DynamicField;
import cn.estsh.i3plus.pojo.base.bean.BaseBean;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiParam;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.hibernate.annotations.ColumnDefault;
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;
import java.io.Serializable;
/**
* @Description : MES_
* @Reference :
* @Author : amy
* @CreateDate : 2018-11-07 14:21
* @Modify:
**/
@Data
@Entity
@DynamicInsert
@DynamicUpdate
@EqualsAndHashCode(callSuper = true)
@Table(name="MES_BOARD_WORK_CELL")
@Api("MES_看板工位信息")
public class MesBoardWorkCell extends BaseBean implements Serializable {
private static final long serialVersionUID = 6251886604848913685L;
@Column(name = "BOARD_CODE")
@ApiParam("看板代码")
private String boardCode;
@Column(name = "WORK_CENTER_CODE")
@ApiParam("工作中心代码")
private String workCenterCode;
@Column(name = "WORK_CELL_CODE")
@ApiParam("工作单元代码")
private String workCellCode;
@Column(name = "X_AXES")
@ApiParam("横坐标")
private Double xAxes = 0d;
@Column(name = "Y_AXES")
@ApiParam("纵坐标")
private Double yAxes = 0d;
@Column(name = "WORK_CELL_IP")
@ApiParam("工位IP")
private String workCellIp;
@Transient
@ApiParam("看板工位状态")
private Boolean boardWorkCellStatus;
@JsonProperty("xAxes")
public Double getxAxes() {
return xAxes;
}
public void setxAxes(Double xAxes) {
this.xAxes = xAxes;
}
@JsonProperty("yAxes")
public Double getyAxes() {
return yAxes;
}
public void setyAxes(Double yAxes) {
this.yAxes = yAxes;
}
public double getXAxes() {
return this.xAxes == null ? 0.0d : this.xAxes;
}
public double getYAxes() {
return this.yAxes == null ? 0.0d : this.yAxes;
}
}

@ -88,6 +88,10 @@ public class MesQcCheckStandard extends BaseBean implements Serializable {
@ApiParam("是否允许让步")
private Integer isConcession = 0;
@Column(name = "NUMBER_FLAG")
@ApiParam("数量标识")
private String numberFlag;
@Transient
@ApiParam("检测类型名称")
private String checkTypeName;

@ -100,9 +100,9 @@ public class MesQcOrder extends BaseBean implements Serializable {
@ApiParam("发运时间")
private String deliveryDate;
@Column(name = "CUST_DELIVERY_LOCATION")
@ApiParam("客户发地")
private String custDeliveryLocation;
@Column(name = "CUST_DELIERY_LOCATION")
@ApiParam("客户发地")
private String custDelieryLocation;
@ApiParam(value = "检测结果")
@Transient
@ -120,4 +120,8 @@ public class MesQcOrder extends BaseBean implements Serializable {
@Transient
private String mesWorkNo;
@Transient
@ApiParam("产品条码")
private String productSn;
}

@ -82,7 +82,7 @@ public class MesQcOrderDetail extends BaseBean implements Serializable {
@ApiParam(value = "已完成数量")
@Transient
private Integer finishQty;
private Integer finishQty = 0;
@ApiParam(value = "检测项类型名称")
@Transient

@ -57,4 +57,8 @@ public class MesQueueOrderBom extends BaseBean implements Serializable {
@Column(name = "COLOR_CODE")
@ApiParam("颜色代码")
private String colorCode;
@Column(name = "OPTION_TYPE")
@ApiParam("选配类型")
private Integer optionType;
}

@ -92,6 +92,10 @@ public class MesQueueOrderDetail extends BaseBean implements Serializable {
@ApiParam("产品颜色")
private String produceColor;
@Column(name = "PRODUCE_COLOR_CODE")
@ApiParam("产品颜色代码")
private String produceColorCode;
@Column(name = "OPTION_CODE")
@ApiParam("选项代码")
private String optionCode;

@ -77,5 +77,5 @@ public class MesQueueShippingDetail extends BaseBean implements Serializable {
@Column(name = "PRODUCE_COLOR")
@ApiParam("产品颜色")
private Double produceColor;
private String produceColor;
}

@ -161,4 +161,8 @@ public class MesScatterPartProdCfg extends BaseBean implements Serializable {
@Column(name = "IS_END_SEQ")
@ApiParam("是否截至顺序号")
private Integer isEndSeq;
@Column(name = "MULTIMEDIA_PLUG_QTY")
@ApiParam("多媒体插头数量")
private Double multimediaPlusQty;
}

@ -0,0 +1,39 @@
package cn.estsh.i3plus.pojo.mes.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;
import java.io.Serializable;
/**
* @author Wynne.Lu
* @date 2020/6/7 15:20
* @desc
*/
@Data
@Entity
@DynamicInsert
@DynamicUpdate
@EqualsAndHashCode(callSuper = true)
@Table(name = "MES_SUB_PART")
@Api("数据同步死信")
public class MesSubPart extends BaseBean implements Serializable {
private static final long serialVersionUID = 4636507477301700549L;
@Column(name = "PART_NO")
@ApiParam("零件号")
private String partNo;
@Column(name = "SUB_PART_NO")
@ApiParam("替代料")
private String subPartNo;
}

@ -1,9 +1,6 @@
package cn.estsh.i3plus.pojo.mes.model;
import cn.estsh.i3plus.pojo.mes.bean.MesBoardEquDetail;
import cn.estsh.i3plus.pojo.mes.bean.MesBoardEquStatus;
import cn.estsh.i3plus.pojo.mes.bean.MesBoardShiftSectionCapacity;
import cn.estsh.i3plus.pojo.mes.bean.MesOee;
import cn.estsh.i3plus.pojo.mes.bean.*;
import io.swagger.annotations.ApiParam;
import lombok.Data;
@ -41,6 +38,9 @@ public class BoardModel {
@ApiParam("看板图片路径")
private String pictureUrl;
@ApiParam("当天停机时间(min)")
private String theDayShutDownTime;
@ApiParam("看板时段计划产量")
private List<MesBoardShiftSectionCapacity> boardShiftSectionCapacityList;
@ -52,4 +52,7 @@ public class BoardModel {
@ApiParam("oee")
private List<MesOee> oeeList;
@ApiParam("工位状态监控明细")
private List<MesBoardWorkCell> boardWorkCellList;
}

@ -0,0 +1,89 @@
package cn.estsh.i3plus.pojo.mes.model;
import io.swagger.annotations.ApiParam;
import lombok.Data;
/**
* @Description:
* @Author: jokelin
* @Date: 2020/6/8 1:22
* @Modify:
*/
@Data
public class ScatterPartProdCfgModel {
private Long id;
private String organizeCode;
@ApiParam("配置编号")
private String cfgId;
@ApiParam("工作中心代码")
private String workCenterCode;
@ApiParam("工作单元代码")
private String workCellCode;
@ApiParam("车型标志值")
private String modelFalgValue;
@ApiParam("物料号")
private String partNo;
@ApiParam("物料名称")
private String partName;
@ApiParam("等级代码")
private String gradeCode;
@ApiParam("颜色代码")
private String colorCode;
@ApiParam("标志位")
private Integer partFlagLocation;
@ApiParam("标志值")
private String partFlagValue;
@ApiParam("防错码")
private String pokeYokeFix;
@ApiParam("项目代码")
private String prodCfgTypeCode;
@ApiParam("产品位置代码")
private String produceCtgyCode;
@ApiParam("确认扫描次数")
private Integer checkScanCount;
@ApiParam("组合码发送顺序")
private Integer sendSeq;
@ApiParam("黄枪规则")
private Integer yellowGunRule;
@ApiParam("是否截至顺序号")
private Integer isEndSeq;
@ApiParam("多媒体插头数量")
private Double multimediaPlusQty;
public ScatterPartProdCfgModel() {}
public ScatterPartProdCfgModel(Long id, String workCenterCode, String workCellCode, String partNo, String partName
, String gradeCode, String colorCode, String prodCfgTypeCode, String produceCtgyCode, Double multimediaPlusQty) {
this.id = id;
this.workCenterCode = workCenterCode;
this.workCellCode = workCellCode;
this.partNo = partNo;
this.partName = partName;
this.gradeCode = gradeCode;
this.colorCode = colorCode;
this.prodCfgTypeCode = prodCfgTypeCode;
this.produceCtgyCode = produceCtgyCode;
this.multimediaPlusQty = multimediaPlusQty;
}
}

@ -29,6 +29,6 @@ public class SpQueueShippingModel {
private String gradeCode;
@ApiParam("产品颜色")
private Double produceColor;
private String produceColor;
}

@ -138,6 +138,9 @@ public class StationRequestBean implements Serializable {
@ApiParam("工步弹框状态")
private Boolean stepDialogStatus = false;
@ApiParam("特殊展示数据")
private Map<String, Object> specialDisplayMap = new HashMap<>();
@Override
public String toString() {
return "StationRequestBean{" +

@ -55,4 +55,7 @@ public class StationResultBean<T> implements Serializable {
@ApiParam("定制页面名称")
private String customPageName;
@ApiParam("特殊展示数据")
private Object specialDisplayData;
}

@ -0,0 +1,15 @@
package cn.estsh.i3plus.pojo.mes.repository;
import cn.estsh.i3plus.pojo.base.jpa.dao.BaseRepository;
import cn.estsh.i3plus.pojo.mes.bean.MesBoardWorkCell;
import org.springframework.stereotype.Repository;
/**
* @Description:
* @Author: adair.song
* @Date: 2020/06/04 13:23
* @Modify:
*/
@Repository
public interface MesBoardWorkCellRepository extends BaseRepository<MesBoardWorkCell, Long> {
}

@ -0,0 +1,14 @@
package cn.estsh.i3plus.pojo.mes.repository;
import cn.estsh.i3plus.pojo.base.jpa.dao.BaseRepository;
import cn.estsh.i3plus.pojo.mes.bean.MesSubPart;
import org.springframework.stereotype.Repository;
/**
* @author Wynne.Lu
* @date 2020/6/7 15:23
* @desc
*/
@Repository
public interface MesSubPartRepository extends BaseRepository<MesSubPart, Long> {
}

@ -91,7 +91,7 @@ public class MesPcnHqlPack {
* @param mesLabelTemplate
* @return
*/
public static DdlPackBean getLabelTemplate( MesLabelTemplate mesLabelTemplate) {
public static DdlPackBean getLabelTemplate(MesLabelTemplate mesLabelTemplate) {
DdlPackBean packBean = DdlPackBean.getDdlPackBean();
DdlPreparedPack.getStringEqualPack(mesLabelTemplate.getTemplateCode(), "templateCode", packBean);
return packBean;
@ -129,7 +129,7 @@ public class MesPcnHqlPack {
return packBean;
}
public static DdlPackBean getStationBom(String org,String workCenter,String workCell,String partNo) {
public static DdlPackBean getStationBom(String org, String workCenter, String workCell, String partNo) {
DdlPackBean packBean = getAllBaseData(org);
DdlPreparedPack.getStringEqualPack(workCenter, "workCenterCode", packBean);
DdlPreparedPack.getStringEqualPack(workCell, "workCellCode", packBean);
@ -183,7 +183,7 @@ public class MesPcnHqlPack {
}
// 工单管理,查询下达,启动,暂停状态
if (!CollectionUtils.isEmpty(mesWorkOrder.getStatusList())){
if (!CollectionUtils.isEmpty(mesWorkOrder.getStatusList())) {
DdlPreparedPack.getInPackList(mesWorkOrder.getStatusList(), "workOrderStatus", packBean);
}
@ -319,6 +319,7 @@ public class MesPcnHqlPack {
/**
*
*
* @param mesProduceSn
* @return
*/
@ -358,6 +359,7 @@ public class MesPcnHqlPack {
/**
*
*
* @param mesPackage
* @return
*/
@ -420,9 +422,9 @@ public class MesPcnHqlPack {
}
/**
*
*
* @param typeCfg
* @return
*/
@ -454,8 +456,8 @@ public class MesPcnHqlPack {
DdlPreparedPack.getStringEqualPack(mesQcOrderDetail.getOrderNo(), "orderNo", packBean);
DdlPreparedPack.getNumEqualPack(mesQcOrderDetail.getCheckType(), "checkType", packBean);
DdlPreparedPack.getStringEqualPack(mesQcOrderDetail.getCheckItemType(), "checkItemType", packBean);
if(mesQcOrderDetail.getCheckType() == MesPcnEnumUtil.MES_QC_CHECK_TYPE.FIRST_CHECK.getValue()){
DdlPreparedPack.getNumEqualPack(mesQcOrderDetail.getFinishQty()+1, "itemNo", packBean);
if (mesQcOrderDetail.getCheckType() == MesPcnEnumUtil.MES_QC_CHECK_TYPE.FIRST_CHECK.getValue()) {
DdlPreparedPack.getNumEqualPack(mesQcOrderDetail.getFinishQty() + 1, "itemNo", packBean);
}
return packBean;
}

@ -51,4 +51,7 @@ public class MesElectricDataModel implements Serializable {
@ApiParam(value = "文件名称")
private String ftpFileName;
@ApiParam(value = "FTP文件")
private Object ftpFile;
}

@ -55,7 +55,7 @@ public class SysLogConsole extends BaseBean {
private Integer logPort;
@Column(name="LOG_GROUP")
@ApiParam(value ="日志分组(控制台日志,操作日志,系统日志,定任务日志)")
@ApiParam(value ="日志分组(日志记录器名称getLogger方法的参数值)")
private String logGroup;
@Column(name="LOG_LEVEL")

@ -456,7 +456,7 @@ public class CoreHqlPack {
* @return
*/
public static DdlPackBean packHqlSysFile(SysFile file) {
DdlPackBean result = DdlPackBean.getDdlPackBean();
DdlPackBean result = DdlPackBean.getDdlPackBean(file);
// hql拼接
DdlPreparedPack.getStringLikerPack(file.getFileOriginalName(), "fileOriginalName", result);
@ -466,9 +466,6 @@ public class CoreHqlPack {
DdlPreparedPack.getStringLikerPack(file.getFileCode(), "fileCode", result);
DdlPreparedPack.timeBuilder(file.getCreateDatetime(), "createDatetime", result, false, false);
// 添加默认排序
DdlPreparedPack.getOrderDefault(file);
return result;
}

@ -12,6 +12,7 @@ import org.hibernate.annotations.DynamicUpdate;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import javax.persistence.Transient;
import java.io.Serializable;
/**
@ -47,7 +48,11 @@ public class PtlAreaActorAction extends BaseBean implements Serializable {
@ApiParam("特定条件")
private String otherWhere;
@Column(name = "AMG_ID")
@ApiParam("组件集编号")
private Long amgId;
@Column(name = "METHOD_CODE")
@ApiParam("方法代码")
private String methodCode;
@Transient
@ApiParam("实现类")
private String callClass;
}

@ -0,0 +1,49 @@
package cn.estsh.i3plus.pojo.ptl.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;
import java.io.Serializable;
/**
* @author Wynne.Lu
* @date 2020/2/14 11:18
* @desc
*/
@Data
@Entity
@DynamicInsert
@DynamicUpdate
@Table(name = "PTL_METHOD")
@EqualsAndHashCode(callSuper = true)
@Api("方法清单")
public class PtlMethod extends BaseBean implements Serializable {
private static final long serialVersionUID = 1208980343927922927L;
@Column(name = "METHOD_CODE")
@ApiParam("方法代码")
private String methodCode;
@Column(name = "METHOD_NAME")
@ApiParam("方法描述")
private String methodName;
@Column(name = "CALL_CLASS")
@ApiParam("实现类")
private String callClass;
@Column(name = "METHOD_TYPE")
@ApiParam("方法类型")
private Integer methodType;
}

@ -77,10 +77,6 @@ public class PtlRouteStatus extends BaseBean implements Serializable {
private Integer statusType;
@Transient
@ApiParam("默认不缓存")
private boolean cacheFlag = false;
@Transient
@ApiParam("触发组件集默认未执行")
private boolean actionAmgIdFalg = false;
@ -92,13 +88,4 @@ public class PtlRouteStatus extends BaseBean implements Serializable {
@ApiParam("组件执行完成根据业务设置下个触发事件如果是外部告知下个触发事件则设置null一个组件集执行完毕后这个值赋给CommonMsgModel的triggerEvent")
private String nextTriggerEvent;
@Transient
@ApiParam("默认继续执行下个组件当组件集中一个组件根据业务需要跳出去进去下个状态点则设置未false,同时配置下个状态点的触发事件nextTriggerEvent")
private boolean execNextModuleFlag = true;
@Transient
@ApiParam("默认异常未处理")
private boolean doErrorFlag = false;
}

@ -1,6 +1,5 @@
package cn.estsh.i3plus.pojo.ptl.bean;
import cn.estsh.i3plus.pojo.base.bean.BaseBean;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiParam;
@ -19,7 +18,6 @@ import java.io.Serializable;
* @date 2020/2/12 17:41
* @desc
*/
@Data
@Entity
@DynamicInsert
@ -44,25 +42,17 @@ public class PtlRouteStatusErrorRecord extends BaseBean implements Serializable
private String taskNo;
@Column(name = "ERROR_DESC")
@ApiParam(value = "失败描述")
@ApiParam(value = "异常描述")
public String errorDesc;
@Column(name = "AREA_NO")
@ApiParam("区域代码")
private String areaNo;
@Column(name = "CACHE_FLAG")
@ApiParam(value = "缓存标识")
private Integer cacheFlag;
@Column(name = "CACHE_KEY")
@ApiParam(value = "缓存KEY")
private String cacheKey;
@Column(name = "HANDLE_TYPE")
@ApiParam(value = "处理方式")
private Integer handleType;
@Column(name = "HANDLE_STATUS")
@ApiParam(value = "处理状态")
private Integer handleStatus;

@ -48,9 +48,6 @@ public class CommonMsgModel implements Serializable {
@ApiModelProperty("外部触发事件")
private String triggerEvent;
@ApiModelProperty("缓存KEY")
private String cacheKey;
@ApiModelProperty("默认非异常内部处理,内部异常处理是设置为true")
private boolean errorInnerAction = false;

@ -0,0 +1,15 @@
package cn.estsh.i3plus.pojo.ptl.repository;
import cn.estsh.i3plus.pojo.base.jpa.dao.BaseRepository;
import cn.estsh.i3plus.pojo.ptl.bean.PtlAreaActorAction;
/**
* @author Wynne.Lu
* @date 2020/2/12 17:41
* @desc
*/
public interface PtlAreaActorActionRepository extends BaseRepository<PtlAreaActorAction, Long> {
}

@ -0,0 +1,15 @@
package cn.estsh.i3plus.pojo.ptl.repository;
import cn.estsh.i3plus.pojo.base.jpa.dao.BaseRepository;
import cn.estsh.i3plus.pojo.ptl.bean.PtlMethod;
/**
* @author Wynne.Lu
* @date 2020/2/12 17:41
* @desc
*/
public interface PtlMethodRepository extends BaseRepository<PtlMethod, Long> {
}

@ -341,4 +341,14 @@ public class PtlHqlPack {
DdlPreparedPack.getStringLikerPack(area.getAreaName(), "areaName", packBean);
return packBean;
}
public static DdlPackBean getPtlRouteStatusErrorRecord(PtlRouteStatusErrorRecord routeStatusErrorRecord, String organizeCode) {
DdlPackBean packBean = getAllBaseDataByNormalPro(routeStatusErrorRecord, organizeCode);
DdlPreparedPack.getStringLikerPack(routeStatusErrorRecord.getRouteCode(), "routeCode", packBean);
DdlPreparedPack.getStringLikerPack(routeStatusErrorRecord.getStatusCode(), "statusCode", packBean);
DdlPreparedPack.getStringLikerPack(routeStatusErrorRecord.getTaskNo(), "taskNo", packBean);
DdlPreparedPack.getStringEqualPack(routeStatusErrorRecord.getAreaNo(), "areaNo", packBean);
DdlPreparedPack.getNumEqualPack(routeStatusErrorRecord.getHandleStatus(), "handleStatus", packBean);
return packBean;
}
}

@ -44,7 +44,7 @@ public class WmsCsStrategy extends BaseBean implements Serializable {
@Column(name = "part_type")
@ApiParam(value = "物料分类")
@AnnoOutputColumn(refClass = WmsEnumUtil.PART_ABC.class, refForeignKey = "value", value = "description")
@DynamicField(webFieldType = CommonEnumUtil.FIELD_TYPE.SELECT, dataSrc = "PART_ABC")
@DynamicField(webFieldType = CommonEnumUtil.FIELD_TYPE.SELECT, isMultiple = 1, dataSrc = "PART_ABC")
private String partType;
@Column(name = "STRATEGY_TYPE")

@ -121,6 +121,11 @@ public class WmsDocMovementDetails extends BaseBean {
@Transient
@ApiParam(value = "状态中文")
private String itemStatusStr;
@Transient
@ApiParam(value = "ERP单号")
private String erpSrcNo;
/**
* :0=,1=
*/

@ -202,6 +202,10 @@ dataSrc ="cn.estsh.i3plus.pojo.wms.bean.WmsZones",
@ApiParam(value = "库龄")
private String age;
@Transient
@ApiParam(value = "库位箱数")
private Long qty;
public WmsLocate() {
}
@ -252,6 +256,12 @@ dataSrc ="cn.estsh.i3plus.pojo.wms.bean.WmsZones",
this.z=z;
}
public WmsLocate(Long qty, Integer status, String zoneNo) {
this.qty = qty;
this.status = status;
this.zoneNo = zoneNo;
}
public Integer getMaxPackageQty() {
return this.maxPackageQty == null ? 0 : this.maxPackageQty.intValue();
}

@ -1,10 +1,8 @@
package cn.estsh.i3plus.pojo.wms.bean;
import cn.estsh.i3plus.pojo.base.annotation.AnnoOutputColumn;
import cn.estsh.i3plus.pojo.base.annotation.DynamicField;
import cn.estsh.i3plus.pojo.base.bean.BaseBean;
import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.enumutil.WmsEnumUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiParam;
import lombok.Data;
@ -45,8 +43,17 @@ public class WmsModeTransport extends BaseBean {
@Column(name = "TRANSPORT_TYPE")
@ApiParam(value = "运输方式")
@DynamicField(webFieldType = CommonEnumUtil.FIELD_TYPE.SELECT, dataSrc = "TRANSPORT_TYPE")
@AnnoOutputColumn(refClass = WmsEnumUtil.TRANSPORT_TYPE.class, refForeignKey = "value", value = "description")
private Integer transportType;
@DynamicField(webFieldType = CommonEnumUtil.FIELD_TYPE.TEXT, dataSrc = "TRANSPORT_TYPE")
private String transportType;
@Column(name = "SERIAL_NUMBER")
@ApiParam(value = "序号")
@DynamicField(webFieldType = CommonEnumUtil.FIELD_TYPE.TEXT)
private String serialNumber;
@Column(name = "remake")
@ApiParam(value = "说明")
@DynamicField(webFieldType = CommonEnumUtil.FIELD_TYPE.TEXT)
private String remake;
}

@ -150,7 +150,7 @@ dataSrc ="cn.estsh.i3plus.pojo.wms.bean.WmsLocate",
public String destLocateNo;
/**
* :1=,10=,20=
* :10:,20:,30:,40:
*/
@Column(name = "ITEM_STATUS")
@ApiParam(value = "状态", example = "0")

@ -233,6 +233,31 @@ public class WmsMoveMaster extends BaseBean {
this.modifyDatetime = modifyDatetime;
}
public WmsMoveMaster(String orderNo, String organizeCode, String partNo, String partNameRdd, String transTypeCode, String transTypeName, Integer itemStatus,
String unit, String srcWhNo, String srcZoneNo, String destWhNo, String destZoneNo, Double transQty, Double rejectQty, String fixId, Integer busiTypeCode,
String createDatetime, String createUser, String modifyUser, String modifyDatetime) {
this.orderNo = orderNo;
this.organizeCode = organizeCode;
this.partNo = partNo;
this.partNameRdd = partNameRdd;
this.transTypeCode = transTypeCode;
this.transTypeName = transTypeName;
this.itemStatus = itemStatus;
this.unit = unit;
this.srcWhNo = srcWhNo;
this.srcZoneNo = srcZoneNo;
this.destWhNo = destWhNo;
this.destZoneNo = destZoneNo;
this.transQty = transQty;
this.rejectQty = rejectQty;
this.fixId = fixId;
this.busiTypeCode = busiTypeCode;
this.createDatetime = createDatetime;
this.createUser = createUser;
this.modifyUser = modifyUser;
this.modifyDatetime = modifyDatetime;
}
public WmsMoveMaster(Long itemQty , String transTypeCode , Integer orderStatus){
this.itemQty = itemQty;
this.transTypeCode = transTypeCode;

@ -1,358 +0,0 @@
package cn.estsh.i3plus.pojo.wms.bean;
import cn.estsh.i3plus.pojo.base.annotation.AnnoOutputColumn;
import cn.estsh.i3plus.pojo.base.bean.BaseBean;
import cn.estsh.i3plus.pojo.base.enumutil.WmsEnumUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiParam;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.hibernate.annotations.ColumnDefault;
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;
import javax.persistence.Version;
/**
* @Description :
* @Reference :
* @Author : qianhuasheng
* @CreateDate : 2019-12-06 15:58
* @Modify:
**/
@Data
@Entity
@DynamicInsert
@DynamicUpdate
@EqualsAndHashCode(callSuper = true)
@Table(name="WMS_TMS_SHIPPING_EXT_DETAIL")
@Api("装车单信息明细")
public class WmsTmsShippingExtDetail extends BaseBean {
private static final long serialVersionUID = -4800308354250386102L;
@Column(name="MOVE_NO")
@ApiParam("装车单")
public String moveNo;
@Column(name = "PART_NO")
@ApiParam("物料编码")
public String partNo;
@Column(name = "PART_NAME_RDD")
@ApiParam("物料名称")
public String partNameRdd;
@Column(name = "ITEM")
@ApiParam("行号")
public String item;
@Column(name = "QTY", columnDefinition = "decimal(18,8)")
@ColumnDefault("0")
@ApiParam(value = "需求数量", example = "0")
public Double qty;
@Column(name = "UNIT")
@ApiParam("单位")
public String unit;
@Column(name = "REF_ORDER_NO")
@ApiParam("关联单号")
private String refOrderNo;
@Column(name = "SRC_WH_NO")
@ApiParam("源仓库代码")
public String srcWhNo;
@Column(name = "SRC_ZONE_NO")
@ApiParam("源存储区代码")
public String srcZoneNo;
@Column(name = "SRC_LOCATE_NO")
@ApiParam("源库位代码")
public String srcLocateNo;
@Column(name = "DEST_WH_NO")
@ApiParam("目标仓库代码")
public String destWhNo;
@Column(name = "DEST_ZONE_NO")
@ApiParam("目标存储区代码")
public String destZoneNo;
@Column(name = "DEST_LOCATE_NO")
@ApiParam("目标库位代码")
public String destLocateNo;
@Column(name = "PRINT_QTY", columnDefinition = "decimal(18,8)")
@ColumnDefault("0")
@ApiParam(value = "条码打印数量", example = "1")
private Double printQty;
@Column(name = "PLAN_DATE")
@ApiParam(value = "计划日期")
private String planDate;
@Column(name = "PLAN_TIME")
@ApiParam(value = "计划时间")
private String planTime;
@Column(name = "SRC_NO")
@ApiParam(value = "源单号")
private String srcNo;
/**
* :N=,C=
*/
@Column(name = "ITEM_STATUS")
@ApiParam(value = "状态", example = "1")
@AnnoOutputColumn(refClass = WmsEnumUtil.ORDER_DETAILS_STATUS.class, refForeignKey = "value", value = "description")
private Integer itemStatus;
/**
* :0=,1=
*/
@Column(name = "IS_FREE")
@ApiParam(value = "是否免费", example = "1")
@AnnoOutputColumn(refClass = WmsEnumUtil.TRUE_OR_FALSE.class, refForeignKey = "value", value = "description")
public Integer isFree;
@Column(name = "REMARK")
@ApiParam(value = "操作原因")
private String remark;
@Column(name = "PICK_QTY", columnDefinition = "decimal(18,8)")
@ColumnDefault("0")
@ApiParam(value = "已拣货数量", example = "1")
private Double pickQty;
@Column(name = "OUT_QTY", columnDefinition = "decimal(18,8)")
@ColumnDefault("0")
@ApiParam(value = "已出库数量", example = "1")
private Double outQty;
@Column(name = "REC_QTY", columnDefinition = "decimal(18,8)")
@ColumnDefault("0")
@ApiParam(value = "已收货数量", example = "1")
private Double recQty;
@Column(name = "MOVE_QTY", columnDefinition = "decimal(18,8)")
@ColumnDefault("0")
@ApiParam(value = "已移库数量", example = "1")
private Double moveQty;
@Column(name = "TASK_GENERATE_QTY", columnDefinition = "decimal(18,8)")
@ColumnDefault("0")
@ApiParam(value = "任务生成数量", example = "1")
private Double taskGenerateQty;
@Column(name = "SRC_AREA_NO")
@ApiParam("源库存地代码")
public String srcAreaNo;
@Column(name = "DEST_AREA_NO")
@ApiParam("目的库存地代码")
public String destAreaNo;
@Column(name = "LOT_NO")
@ApiParam("批次")
public String lotNo;
@Column(name="SRC_ITEM", columnDefinition="varchar(50) default ''",nullable=false)
@ApiParam("源单行号")
public String srcItem;
@Column(name = "CUST_ORDER_NO")
@ApiParam("客户订单号")
public String custOrderNo;
@Column(name = "ASSIGN_DATE_CODE")
@ApiParam(value = "指定生产日期")
private String assignDateCode;
@Transient
@ApiParam("实际批次")
private String actualLot;
@Transient
@ApiParam("实际数量")
private Double actualQty;
@Transient
@ApiParam("推荐批次")
private String recommondLot;
@Transient
@ApiParam("推荐库位")
private String recommondLocateNo;
@Transient
@ApiParam("前端表格编辑使用")
private Boolean isSet = false;
@Transient
@ApiParam("生产日期")
public String dateCode;
@ApiParam(value = "散件移库输入移库数量")
@Transient
public Double inputMoveQty;
@Transient
@ApiParam(value = "标准包装", example = "1")
private Double snp;
@Transient
@ApiParam(value = "条码总数量", example = "1")
private Double detailsSnCount;
@Transient
@ApiParam(value = "余数", example = "1")
private Double restQty;
@Transient
@ApiParam("任务状态")
@AnnoOutputColumn(refClass = WmsEnumUtil.IS_GENERAL_TASK.class, refForeignKey = "value", value = "description")
private Integer isTask;
@Transient
@ApiParam("主表单据状态")
@AnnoOutputColumn(refClass = WmsEnumUtil.MASTER_ORDER_STATUS.class, refForeignKey = "value", value = "description")
private Integer orderMasterStatus;
@Transient
@ApiParam("打印状态")
@AnnoOutputColumn(refClass = WmsEnumUtil.PRINT_STATUS.class, refForeignKey = "value", value = "description")
private Integer printStatus;
@Transient
@ApiParam("优先级")
private Integer priority;
@Transient
@ApiParam(value = "汇总需求数量", example = "0")
public Double sumQty;
@Transient
@ApiParam(value = "汇总拣货数量", example = "0")
public Double sumPickQty;
@Transient
@ApiParam("执行状态")
@AnnoOutputColumn(refClass = WmsEnumUtil.PICKING_EXECUTE_STATUS.class, refForeignKey = "value", value = "description")
private Integer executeStatus;
@Version
@Column(name = "LOCK_VERSION")
@ApiParam(value = "乐观锁", example = "1")
public transient Integer lockVersion;
@Transient
@ApiParam("移动类型")
public Integer moveType;
@Transient
@ApiParam("业务类型")
@AnnoOutputColumn(refClass = WmsEnumUtil.OUT_MOVEMENT_BUSI_TYPE.class, refForeignKey = "value", value = "description")
public Integer busiType;
@Column(name = "IS_SN")
@ApiParam(value = "条码生成状态", example = "20")
public Integer isSn;
public WmsTmsShippingExtDetail () {
}
public String getRecommondLot() {
return recommondLot == null ? "无" : this.recommondLot;
}
public Double getQty() {
return qty == null ? 0D : this.qty.doubleValue();
}
public Double getOutQty() {
return outQty == null ? 0D : this.outQty.doubleValue();
}
public Double getPickQty() {
return pickQty == null ? 0D : this.pickQty.doubleValue();
}
public Double getActualQty() {
return actualQty == null ? 0D : this.actualQty.doubleValue();
}
public Double getRecQty() {
return recQty == null ? 0D : this.recQty.doubleValue();
}
public Integer getIsTaskVal() {
return isTask == null ? 0 : this.isTask.intValue();
}
public Integer getOrderMasterStatus() {
return orderMasterStatus == null ? 0 : this.orderMasterStatus.intValue();
}
public WmsTmsShippingExtDetail(WmsDocMovementDetails docMovementDetails,String moveNo) {
this.moveNo = moveNo;
this.partNo = docMovementDetails.getPartNo();
this.partNameRdd = docMovementDetails.getPartNameRdd();
this.item = docMovementDetails.getItem();
this.qty =docMovementDetails.getQty();
this.unit = docMovementDetails.getUnit();
this.srcWhNo = docMovementDetails.getSrcWhNo();
this.srcZoneNo = docMovementDetails.getSrcZoneNo();
this.srcLocateNo = docMovementDetails.getSrcLocateNo();
this.destWhNo = docMovementDetails.getDestWhNo();
this.destZoneNo = docMovementDetails.getDestZoneNo();
this.destLocateNo = docMovementDetails.getDestLocateNo();
this.printQty = docMovementDetails.getPrintQty();
this.planDate = docMovementDetails.getPlanDate();
this.planTime = docMovementDetails.getPlanTime();
this.srcNo = docMovementDetails.getSrcNo();
this.itemStatus = docMovementDetails.getItemStatus();
this.isFree = docMovementDetails.getIsFree();
this.remark = docMovementDetails.getRemark();
this.pickQty = docMovementDetails.getPickQty();
this.outQty = docMovementDetails.getOutQty();
this.recQty = docMovementDetails.getRecQty();
this.moveQty = docMovementDetails.getMoveQty();
this.taskGenerateQty = docMovementDetails.getTaskGenerateQty();
this.srcAreaNo = docMovementDetails.getSrcAreaNo();
this.destAreaNo = docMovementDetails.getDestAreaNo();
this.lotNo = docMovementDetails.getLotNo();
this.srcItem = docMovementDetails.getSrcItem();
this.refOrderNo = docMovementDetails.getOrderNo();
this.custOrderNo = docMovementDetails.getCustOrderNo();
this.assignDateCode = docMovementDetails.getAssignDateCode();
this.actualLot = docMovementDetails.getActualLot();
this.actualQty = docMovementDetails.getActualQty();
this.recommondLot = docMovementDetails.getRecommondLot();
this.recommondLocateNo = docMovementDetails.getRecommondLocateNo();
this.isSet = docMovementDetails.getIsSet();
this.dateCode = docMovementDetails.getDateCode();
this.inputMoveQty = docMovementDetails.getInputMoveQty();
this.snp = docMovementDetails.getSnp();
this.detailsSnCount = docMovementDetails.getDetailsSnCount();
this.restQty = docMovementDetails.getRestQty();
this.isTask = docMovementDetails.getIsTask();
this.orderMasterStatus = docMovementDetails.getOrderMasterStatus();
this.printStatus = docMovementDetails.getPrintStatus();
this.priority = docMovementDetails.getPriority();
this.sumQty = docMovementDetails.getSumQty();
this.sumPickQty = docMovementDetails.getSumPickQty();
this.executeStatus = docMovementDetails.getExecuteStatus();
this.lockVersion = docMovementDetails.getLockVersion();
this.moveType = docMovementDetails.getMoveType();
this.busiType = docMovementDetails.getBusiType();
this.isSn = docMovementDetails.getIsSn();
}
}

@ -1,175 +0,0 @@
package cn.estsh.i3plus.pojo.wms.bean;
import cn.estsh.i3plus.pojo.base.annotation.AnnoOutputColumn;
import cn.estsh.i3plus.pojo.base.bean.BaseBean;
import cn.estsh.i3plus.pojo.base.enumutil.WmsEnumUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiParam;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.hibernate.annotations.ColumnDefault;
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 : qianhuasheng
* @CreateDate : 2019-12-06 15:58
* @Modify:
**/
@Data
@Entity
@DynamicInsert
@DynamicUpdate
@EqualsAndHashCode(callSuper = true)
@Table(name="WMS_TMS_SHIPPING_EXT_SN")
@Api("装车单条码明细")
public class WmsTmsShippingExtSn extends BaseBean {
private static final long serialVersionUID = 5704546384179442907L;
@Column(name="MOVE_NO")
@ApiParam("装车单")
public String moveNo;
@Column(name="ORDER_NO")
@ApiParam("订单号")
public String orderNo;
@Column(name="ITEM")
@ApiParam("行号")
public String item;
@Column(name="PART_NO")
@ApiParam("物料编码")
public String partNo;
@Column(name="PART_NAME_RDD")
@ApiParam("物料名称")
public String partNameRdd;
@Column(name="QTY", columnDefinition = "decimal(18,8)")
@ColumnDefault("0")
@ApiParam(value = "数量", example = "0")
public Double qty;
@Column(name="UNIT")
@ApiParam("单位")
public String unit;
/**
* itemStatus
*/
@Column(name="SN_STATUS")
@ApiParam(value = "操作状态", example = "10")
@AnnoOutputColumn(refClass = WmsEnumUtil.ORDER_SN_STATUS.class,refForeignKey = "value",value = "description")
public Integer snStatus;
@Column(name="SN")
@ApiParam("条码")
public String sn;
@Column(name = "VENDOR_NO")
@ApiParam(value = "供应商编码")
public String vendorNo;
@Column(name = "SN_TYPE")
@ApiParam(value = "条码类型")
@AnnoOutputColumn(refClass = WmsEnumUtil.WMS_STOCK_TYPE.class, refForeignKey = "value", value = "description")
private Integer snType;
@Transient
@ApiParam("前端表格编辑使用")
private Boolean isSet = false;
@Transient
@ApiParam("目标库位代码")
public String destLocateNo;
@Transient
@ApiParam("源库位代码")
public String srcLocateNo;
@Transient
@ApiParam("生产日期")
public String dateCode;
@ApiParam(value = "散件移库输入移库数量")
@Transient
public Double inputMoveQty;
@Transient
@ApiParam("计划交货日期")
private String planDate;
@Transient
@ApiParam("计划交货时间")
private String planTime;
@Transient
@ApiParam("ERP库存地")
private String erpWhNo;
@Transient
@AnnoOutputColumn(refClass = WmsEnumUtil.STOCK_SN_STATUS.class,refForeignKey = "value",value = "description")
public Integer itemStatus;
@Transient
@ApiParam("客户零件号")
private String customerPartNo;
@Transient
@ApiParam("父层级packcode对应的可回用零件号")
private String parentReturnPart;
@Transient
@ApiParam("打印模板")
private String templateNo;
@Transient
@ApiParam("剩余箱数量")
private Long countBox;
public WmsTmsShippingExtSn(){}
public WmsTmsShippingExtSn(Long countBox,String partNo) {
this.countBox = countBox;
this.partNo = partNo;
}
public WmsTmsShippingExtSn(String moveNo,WmsDocMovementSn docMovementSn) {
this.moveNo = moveNo;
this.orderNo = docMovementSn.getOrderNo();
this.item = docMovementSn.getItem();
this.partNo = docMovementSn.getPartNo();
this.partNameRdd = docMovementSn.getPartNameRdd();
this.qty = docMovementSn.getQty();
this.unit = docMovementSn.getUnit();
this.snStatus = docMovementSn.getSnStatus();
this.sn = docMovementSn.getSn();
this.vendorNo = docMovementSn.getVendorNo();
this.snType = docMovementSn.getSnType();
this.isSet = docMovementSn.getIsSet();
this.destLocateNo = docMovementSn.getDestLocateNo();
this.srcLocateNo = docMovementSn.getSrcLocateNo();
this.dateCode = docMovementSn.getDateCode();
this.inputMoveQty = docMovementSn.getInputMoveQty();
this.planDate = docMovementSn.getPlanDate();
this.planTime = docMovementSn.getPlanTime();
this.erpWhNo = docMovementSn.getErpWhNo();
this.itemStatus = docMovementSn.getItemStatus();
this.customerPartNo = docMovementSn.getCustomerPartNo();
this.parentReturnPart = docMovementSn.getParentReturnPart();
this.templateNo = docMovementSn.getTemplateNo();
this.countBox = docMovementSn.getCountBox();
}
}

@ -1,17 +0,0 @@
package cn.estsh.i3plus.pojo.wms.repository;
import cn.estsh.i3plus.pojo.base.jpa.dao.BaseRepository;
import cn.estsh.i3plus.pojo.wms.bean.WmsTmsShippingExtDetail;
import org.springframework.stereotype.Repository;
/**
* @Description :
* @Reference :
* @author: qianhuasheng
* @date: 2019/9/19 14:22
* @Modify:
*/
@Repository
public interface IWmsTmsShippingExtDetailRepository extends BaseRepository<WmsTmsShippingExtDetail,Long> {
}

@ -1,17 +0,0 @@
package cn.estsh.i3plus.pojo.wms.repository;
import cn.estsh.i3plus.pojo.base.jpa.dao.BaseRepository;
import cn.estsh.i3plus.pojo.wms.bean.WmsTmsShippingExtSn;
import org.springframework.stereotype.Repository;
/**
* @Description :
* @Reference :
* @author: qianhuasheng
* @date: 2019/9/19 14:22
* @Modify:
*/
@Repository
public interface IWmsTmsShippingExtSnRepository extends BaseRepository<WmsTmsShippingExtSn,Long> {
}
Loading…
Cancel
Save