Merge branch 'dev' into test

yun-zuoyi
jokelone 5 years ago
commit 7dad371f27

@ -338,9 +338,10 @@ public class AndonManageQueue extends BaseManageQueue {
* @param confirmTime
* @param resetTime
*/
public AndonManageQueue(String organizeCode,String workCenterNameRdd,String workCellNameRdd,String resetUser,String alarmCode,String callTime, String confirmTime,String resetTime){
public AndonManageQueue(String organizeCode,String workCenterNameRdd,String workCellCode,String workCellNameRdd,String resetUser,String alarmCode,String callTime, String confirmTime,String resetTime){
this.organizeCode = organizeCode;
this.workCenterNameRdd = workCenterNameRdd;
this.workCellCode = workCellCode;
this.workCellNameRdd = workCellNameRdd;
this.resetUser = resetUser;
this.alarmCode = alarmCode;

@ -67,6 +67,6 @@ public class MesWorkCell extends BaseBean {
private String workCellType;
public String getName(){
return this.workCellName;
return this.workCellCode;
}
}

@ -21,6 +21,12 @@ public class AndonBoardModel {
@ApiParam("工作单元名称")
private String workCellName;
@ApiParam("生产线代码")
private String workCenterCode;
@ApiParam("生产线名称")
private String workCenterName;
@ApiParam("安灯任务编号")
private String andonOrderNo;
@ -36,9 +42,12 @@ public class AndonBoardModel {
@ApiParam("响应时长 单位:分钟")
private Long responseTimeCount = 0L;
@ApiParam("解决时长 单位:分钟")
@ApiParam("响应时长 单位:分钟")
private Long resetTimeCount = 0L;
@ApiParam("响应时长/响应时长(通用) 单位:分钟")
private Long commonTimeCount = 0L;
@ApiParam("安灯正常处理的次数")
private Integer inTime = 0;
@ -60,6 +69,8 @@ public class AndonBoardModel {
@ApiParam("工位运行状态")
private String cellStatus;
@ApiParam("图表类型颜色")
private String color;
public int getTotalTimeVal() {
return totalTime == null ? 0 : totalTime;
@ -85,6 +96,8 @@ public class AndonBoardModel {
return resetTimeCount == null ? 0 : resetTimeCount;
}
public double getCommonTimeCountVal() {
return commonTimeCount == null ? 0 : commonTimeCount;
}
}

@ -1,6 +1,8 @@
package cn.estsh.i3plus.pojo.andon.model;
import cn.estsh.i3plus.pojo.andon.bean.AndonManageQueue;
import cn.estsh.i3plus.pojo.andon.bean.MesWorkCenter;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.Data;
@ -40,27 +42,54 @@ public class AndonMenuInterfaceModel{
@ApiParam("当前安灯类型故障比例")
private Double proportion = 0D;
@ApiParam("当前工厂的产线故障统计")
private List<AndonMenuInterfaceModel> andonWorkcenterList;
@ApiParam("图表类型颜色")
private String color;
@ApiParam("当前产线的所有故障统计")
private List<AndonBoardModel> alarmBrokenInfoList;
@ApiParam("安灯状态")
private Integer actionCode;
@ApiParam("当前产线的未解决故障统计")
private List<AndonBoardModel> pendingSolveBrokenInfoList;
@ApiParam("安灯状态名称")
private String actionName;
@ApiParam("mes微服调用-故障次数占比")
private List<AndonBoardModel> mesBrokenRatioList;
@ApiParam("当前产线的响应时长top10")
private List<AndonBoardModel> responseInfoList;
@ApiParam("故障时长类型占比 / 故障次数占比 / 工厂故障信息-产线故障时长-产线时长集合")
private List<AndonBoardModel> brokenRatioList;
@ApiParam("当前产线的解决时长top10")
private List<AndonBoardModel> solveInfoList;
@ApiParam("工厂故障信息-产线故障时长-安灯类型集合")
private List<AndonMenuInterfaceModel> workcenterBrokenTimeList;
@ApiParam("当前产线的异常时长top10")
private List<AndonBoardModel> exceptionInfoList;
@ApiParam("工厂故障信息-产线故障时长-产线集合")
private List<MesWorkCenter> workCenterList;
@ApiParam("当前产线的站点状态统计")
@ApiParam("产线整体状态")
private List<AndonMenuInterfaceModel> andonWorkcenterList;
@ApiParam("产品运行状态示意图")
private List<CellGroupStatusModel> andonCellGroupStatusList;
@ApiParam("事件设备时长TOP10")
private List<AndonMenuInterfaceModel> equTimeList;
@ApiParam("事件设备时长TOP10-次数")
private List<String> equInTimeList;
@ApiParam("事件质量时长TOP10")
private List<AndonMenuInterfaceModel> qualityTimeList;
@ApiParam("事件质量时长TOP10-次数")
private List<String> qualityInTimeList;
@ApiParam("事件物料时长TOP10")
private List<AndonMenuInterfaceModel> partTimeList;
@ApiParam("事件物料时长TOP10-次数")
private List<String> partInTimeList;
@ApiParam("当前产线的未解决故障统计")
private List<AndonBoardModel> pendingSolveBrokenInfoList;
public double getExceptionTimeVal() {
return exceptionTime == null ? 0 : exceptionTime;
}

@ -867,4 +867,13 @@ public class AndonHqlPack {
return result;
}
public static DdlPackBean packHqlAndonMenu(String organizeCode, String workCenterCode, String startDateTime, String endDateTime) {
DdlPackBean result = DdlPackBean.getDdlPackBean(organizeCode);
if (!StringUtils.isEmpty(workCenterCode)) {
DdlPreparedPack.getStringEqualPack(workCenterCode, "workCenterCode", result);
}
DdlPreparedPack.timeBuilder(startDateTime, endDateTime, "createDatetime", result, true);
return result;
}
}

@ -18,4 +18,8 @@ public class GanttCalendarModel {
@JsonDeserialize(using = CustomDateDeserializer.class)
private Date endDate;
private String cls;
//private String timeRangeColor;
private String eventColor;
private String name;
private Long workId;
}

@ -947,24 +947,27 @@ public class AndonEnumUtil {
*/
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum ALARM_TYPE {
PART("PART_ALARM", 110060104, "物料"),
QUALITY("QUALITY_ALARM", 110060105, "质量"),
EQUIP("EQUMENT_ALARM", 110060106, "设备"),
PROCESS("ROUTING_ALARM", 110060107, "工艺"),
CHECK("OTHER_ALARM", 110060108, "自处理"),
FIX_ERROR("FIX_ERROR", 110060109, "自动报警");
//下面的顺序不要更改packBrokenTimeTypeRatioList方法有用到此枚举的顺序
EQUIP("EQUMENT_ALARM", 110060106, "设备", "#D06D6A"),
QUALITY("QUALITY_ALARM", 110060105, "质量", "#9084FF"),
PART("PART_ALARM", 110060104, "物料", "#24BDBA"),
PROCESS("ROUTING_ALARM", 110060107, "工艺", "#2B97F9"),
CHECK("OTHER_ALARM", 110060108, "自处理", "#EAA510"),
FIX_ERROR("FIX_ERROR", 110060109, "自动报警", "#797B7F");
private String value;
private Integer code;
private String description;
private String colour;
ALARM_TYPE(String value, Integer code, String description) {
ALARM_TYPE(String value, Integer code, String description, String colour) {
this.value = value;
this.code = code;
this.description = description;
this.colour = colour;
}
public String getValue() {
public String getValue() {
return value;
}
@ -976,6 +979,10 @@ public class AndonEnumUtil {
return description;
}
public String getColour() {
return colour;
}
public static String valueOfDescription(String val) {
String tmp = null;
for (int i = 0; i < values().length; i++) {
@ -995,6 +1002,16 @@ public class AndonEnumUtil {
}
return tmp;
}
public static String colourOfValue(String val) {
String tmp = null;
for (int i = 0; i < values().length; i++) {
if (StringUtils.equalsIgnoreCase(values()[i].value, val)) {
tmp = values()[i].colour;
}
}
return tmp;
}
}
/**

@ -276,7 +276,8 @@ public class MesEnumUtil {
DEFECT_CAUSE("DEFECT_CAUSE", "缺陷原因"),
REPAIR("REPAIR", "处理措施"),
SCRAP("SCRAP", "报废原因"),
QC_CHECK_STAND("QC_CHECK_STAND", "质量检测标准");
QC_CHECK_STAND("QC_CHECK_STAND", "质量检测标准"),
WC_CHECK("WC_CHECK", "开线检查项");
private String value;
private String description;
@ -1461,7 +1462,11 @@ public class MesEnumUtil {
MES_PART_OJBECT(340, "物料对象"),
MES_ROUTE_PROCESS_WORK_CELL(350, "工序工作单元"),
MES_DATASOURCE(360, "DB地址清单"),
MES_EQU_TASK_NOTIFY_CFG(370, "设备通知配置");
MES_EQU_TASK_NOTIFY_CFG(370, "设备通知配置"),
MES_EQU_NOTIFY_OBJECT_CFG(380,"设备通知对象"),
MES_PLC(390,"PLC地址清单"),
MES_PROCESS(400,"工序信息"),
MES_KPSN_RULE(410,"关键件条码校验规则");
private int value;
private String description;
@ -1871,7 +1876,7 @@ public class MesEnumUtil {
}
/**
* pcn
* MesProdBindRecord
*/
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum MES_ACTION_TYPE {
@ -3161,6 +3166,7 @@ public class MesEnumUtil {
return tmp;
}
}
/**
*
*/
@ -3168,7 +3174,8 @@ public class MesEnumUtil {
public enum QUALITY_STANDARD_TYPE {
NG_RATE(10, "不良率"),
PPM(20, "PPM");
INNER_PPM(20, "PPM"),
ONLINE_PPM(30, "线上PPM");
private int value;
private String description;
@ -3233,6 +3240,7 @@ public class MesEnumUtil {
return tmp;
}
}
/**
* MesProduceSnqcStatus
*/
@ -3720,13 +3728,8 @@ public class MesEnumUtil {
*/
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum WC_CHECK_TYPE {
PERSON(10, "person", "人员"),
EQUIPMENT(20, "equipment", "设备"),
MATERIAL(30, "material", "物料"),
ROUTE(40, "route", "工艺"),
ONLINE_SIGNAL(50, "onlineSignal", "开线信号"),
MAKE_UP_SIGNAL(60, "makeUpSignal", "补偿信号");
MATERIAL(10, "MATERIAL", "物料"),
ONLINE_SIGNAL(20, "ONLINE_SIGNAL", "开线信号");
private int value;
private String code;

@ -214,7 +214,45 @@ public class MesPcnEnumUtil {
}
}
/**
* MES_TYPE_CFG
*/
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum MES_TYPE_CFG {
DEFECT("DEFECT", "缺陷"),
DEFECT_CAUSE("DEFECT_CAUSE", "缺陷原因"),
REPAIR("REPAIR", "处理措施"),
SCRAP("SCRAP", "报废原因"),
QC_CHECK_STAND("QC_CHECK_STAND", "质量检测标准"),
WC_CHECK("WC_CHECK", "开线检查项");
private String value;
private String description;
MES_TYPE_CFG(String value, String description) {
this.value = value;
this.description = description;
}
public String 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.equals(val)) {
tmp = values()[i].description;
}
}
return tmp;
}
}
/**
* MesProdBindRecord
*/
@ -1175,14 +1213,8 @@ public class MesPcnEnumUtil {
*/
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum WC_CHECK_TYPE {
PERSON(10, "people", "人员"),
EQUIPMENT(20, "equipments", "设备"),
MATERIAL(30, "materials", "物料"),
ROUTE(40, "routes", "工艺"),
ONLINE_SIGNAL(50, "onlineSignal", "开线信号"),
ENVIRONMENT(60, "environment", "环境");
MATERIAL(10, "MATERIAL", "物料"),
ONLINE_SIGNAL(20, "ONLINE_SIGNAL", "开线信号");
private int value;
private String code;

@ -3023,6 +3023,8 @@ public class WmsEnumUtil {
}
}
/**
*
*/
@ -4566,4 +4568,145 @@ public class WmsEnumUtil {
}
}
/**
*
* 2
*/
public enum IS_VALUABLE {
TRUE(1, "贵重物料"), FALSE(2, "非贵重物料");
private int value;
private String description;
IS_VALUABLE(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;
}
}
/**
*
* 10
*/
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum PULL_TASK_DETAILS_STATUS {
BE_HANDLE(10,"BE_HANDLE", "待处理"),
CANCELLATION(20,"CANCELLATION", "已处理");
private int value;
private String code;
private String description;
PULL_TASK_DETAILS_STATUS(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 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;
}
}
/**
*
* 10
*/
@JsonFormat(shape = JsonFormat.Shape.OBJECT)
public enum PULL_TASK_MASTER_STATUS {
CREATE(10,"CREATE", "创建"),
ENABLED(20,"ENABLED", "已启动"),
COMPLETE(30,"COMPLETE", "已完成"),
CLOSE(40,"CLOSE", "已关闭");
private int value;
private String code;
private String description;
PULL_TASK_MASTER_STATUS(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 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;
}
}
}

@ -3,7 +3,11 @@ package cn.estsh.i3plus.pojo.base.util;
import java.lang.reflect.Field;
import java.lang.reflect.Method;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class StringUtil {
@ -16,8 +20,6 @@ public class StringUtil {
return false;
}
/**
*
* @param clazz
@ -47,14 +49,6 @@ public class StringUtil {
for(int i = 0;i < superFields.length; i++){
fieldNames.add(superFields[i].getName());
}
// fieldNames.add("id");
// fieldNames.add("organizeCode");
// fieldNames.add("isValid");
// fieldNames.add("isDeleted");
// fieldNames.add("createUser");
// fieldNames.add("createDatetime");
// fieldNames.add("modifyUser");
// fieldNames.add("modifyDatetime");
return fieldNames;
}
@ -76,17 +70,21 @@ public class StringUtil {
}
}
/**
*
* @return
*/
public static String getFieldNames(String[] fieldNames) {
StringBuffer stringBuffer = new StringBuffer();
for (String fieldName : fieldNames) {
stringBuffer.append(fieldName).append(",");
private static Pattern linePattern = Pattern.compile("_(\\w)");
/** 驼峰转下划线 */
public static Map<String, Object> humpToLine(Map<String, Object> map) {
Map<String, Object> resultMap = new HashMap<>();
for (String str : map.keySet()) {
str = str.toLowerCase();
Matcher matcher = linePattern.matcher(str);
StringBuffer sb = new StringBuffer();
while (matcher.find()) {
matcher.appendReplacement(sb, matcher.group(1).toUpperCase());
}
matcher.appendTail(sb);
resultMap.put(sb.toString(), map.get(str));
}
int stringBufferLength = stringBuffer.length();
stringBuffer.delete(stringBufferLength - 1, stringBufferLength);
return stringBuffer.toString();
return resultMap;
}
}

@ -22,28 +22,17 @@ import java.util.*;
@Api("开线管控model")
public class WcCheckModel {
@ApiParam("人")
private List<MesWcCheckRecord> people;
@ApiParam("人 列")
private Map<String, String> peopleColumn;
@ApiParam("机")
private List<MesWcCheckRecord> equipments;
@ApiParam("机 列")
private Map<String, String> equipmentsColumn;
@ApiParam("工作中心")
private String workCenterCode;
@ApiParam("物料")
private List<MesWcCheckRecord> materials;
@ApiParam("物料 列")
private Map<String, String> materialsColumn;
@ApiParam("工单")
private String workOrder;
@ApiParam("法")
private List<MesWcCheckRecord> routes;
@ApiParam("法 列")
private Map<String, String> routesColumn;
@ApiParam("产品号")
private String partNo;
@ApiParam("对象list和列关系")
private Map<String, String> dataColumnRelation;
@ApiParam("是否通过")
private Integer isPass;
@ApiParam("开线信号")
private Integer onlineSignal;
@ -51,43 +40,23 @@ public class WcCheckModel {
@ApiParam("开线对象")
MesWcCheckRecord onlineSignalEqu;
@ApiParam("是否通过")
private Integer isPass;
@ApiParam("工作中心")
private String workCenterCode;
@ApiParam("工单")
private String workOrder;
@ApiParam("产品号")
private String partNo;
@ApiParam("需要展示的数据")
private Map<String, String> need2ShowMap;
private Map<String, String> titleMap;
@ApiParam("对象list和列关系")
private Map<String, Map<String, String>> dataColumnRelation;
@ApiParam("重构map")
private Map<String, List<MesWcCheckRecord>> dataMap;
public WcCheckModel initialWcCheckModel() {
WcCheckModel wcCheckModel = new WcCheckModel();
wcCheckModel.setPeople(new ArrayList<>());
wcCheckModel.setEquipments(new ArrayList<>());
wcCheckModel.setMaterials(new ArrayList<>());
wcCheckModel.setRoutes(new ArrayList<>());
wcCheckModel.setPeopleColumn(new HashMap<>());
wcCheckModel.setEquipmentsColumn(new HashMap<>());
wcCheckModel.setMaterialsColumn(new HashMap<>());
wcCheckModel.setRoutesColumn(new HashMap<>());
wcCheckModel.setOnlineSignal(MesPcnEnumUtil.ONLINE_SIGNAL.NON_CHECK.getValue());
wcCheckModel.setIsPass(MesPcnEnumUtil.IS_WCCHECK_PASS.NON_PASS.getValue());
onlineSignalEqu = new MesWcCheckRecord();
wcCheckModel.setNeed2ShowMap(new HashMap<>());
Map<String, String> dataColumnRelationMap = new HashMap<>();
dataColumnRelationMap.put("people", "peopleColumn");
dataColumnRelationMap.put("equipments", "equipmentsColumn");
dataColumnRelationMap.put("materials", "materialsColumn");
dataColumnRelationMap.put("routes", "routesColumn");
wcCheckModel.setDataColumnRelation(dataColumnRelationMap);
wcCheckModel.setTitleMap(new LinkedHashMap<>());
wcCheckModel.setDataMap(new LinkedHashMap<>());
wcCheckModel.setDataColumnRelation(new LinkedHashMap<>());
return wcCheckModel;
}

@ -0,0 +1,57 @@
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;
/**
* @Author: Wynne.Lu
* @CreateDate: 2019/12/12 4:00
* @Description:
**/
@Data
@Entity
@DynamicInsert
@DynamicUpdate
@EqualsAndHashCode(callSuper = true)
@Table(name = "IF_WMS_PPM")
@Api("WMS PPM 接口表")
public class IfWmsPpm extends BaseBean {
@Column(name = "YEAR")
@ApiParam("年")
private String year;
@Column(name = "MONTH")
@ApiParam("月")
private String month;
@Column(name = "PPM_VALUE")
@ApiParam("PPM值")
private String ppmValue;
@Column(name = "SYNC_STATUS")
@ApiParam("同步状态")
private Integer syncStatus;
@Column(name = "ERROR_MESSAGE")
@ApiParam("异常消息")
private String errorMessage;
@Column(name = "ACTION_CODE")
@ApiParam("动作代码")
private String actionCode;
@Column(name = "IF_CODE")
@ApiParam("接口代码")
private String ifCode;
}

@ -37,10 +37,6 @@ public class MesPartObject extends BaseBean {
@ApiParam("对象代码")
private String objectCode;
@Column(name = "OBJECT_NAME")
@ApiParam("物料名称")
private String objectName;
@Column(name = "WORK_CENTER_CODE")
@ApiParam("生产线")
private String workCenterCode;
@ -60,4 +56,8 @@ public class MesPartObject extends BaseBean {
@Transient
@ApiParam("数据组号")
private String groupNo;
@Transient
@ApiParam("对象名称")
private String objectName;
}

@ -9,6 +9,7 @@ import org.hibernate.annotations.DynamicInsert;
import org.hibernate.annotations.DynamicUpdate;
import javax.persistence.*;
import java.math.BigDecimal;
/**
* @Description:
@ -138,6 +139,31 @@ public class MesProduceSn extends BaseBean {
@ApiParam("下线结束时间")
private String outWorkCenterTimeEnd;
@Transient
@ApiParam("操作类型名称")
private String operateTypeName;
@Transient
@ApiParam("条码状态名称")
private String snStatusName;
@Transient
@ApiParam("质量状态名称")
private String qcStatusName;
@Transient
@ApiParam("条码类型名称")
private String snTypeName;
public MesProduceSn() {
}
public MesProduceSn(String partNo, Integer qcStatus, Double qty) {
this.partNo = partNo;
this.qcStatus = qcStatus;
this.qty = qty;
}
public double getQtyVal() {
return this.qty == null ? 0.0d : this.qty;
}

@ -138,6 +138,22 @@ public class MesProduceSnTravel extends BaseBean {
@ApiParam("下线结束时间")
private String outWorkCenterTimeEnd;
@Transient
@ApiParam("操作类型名称")
private String operateTypeName;
@Transient
@ApiParam("条码状态名称")
private String snStatusName;
@Transient
@ApiParam("质量状态名称")
private String qcStatusName;
@Transient
@ApiParam("条码类型名称")
private String snTypeName;
public double getQtyVal() {
return this.qty == null ? 0.0d : this.qty;
}

@ -47,7 +47,7 @@ public class MesRawPartSn extends BaseBean {
@Column(name = "RAW_QTY")
@ApiParam("数量")
private Long rawQty;
private Double rawQty;
@Column(name = "LOT_NO")
@ApiParam("生产批次")
@ -65,7 +65,7 @@ public class MesRawPartSn extends BaseBean {
@ApiParam("供应商代码")
private String supplierCode;
public long getRawQtyVal() {
public double getRawQtyVal() {
return this.rawQty == null ? 0l : this.rawQty;
}

@ -39,7 +39,7 @@ public class IfRawPartDataModel extends BaseBean {
private String serialNumber;
@ApiParam("数量")
private BigDecimal qty;
private Double qty;
@ApiParam("单位")
private String unit;

@ -0,0 +1,67 @@
package cn.estsh.i3plus.pojo.mes.model;
import io.swagger.annotations.ApiParam;
import lombok.Data;
import javax.persistence.Transient;
/**
* @Description:
* @Reference:
* @Author: joke.wang
* @CreateDate: 2019\12\13 14:33
* @Modify:
**/
@Data
public class MesPartObjectModel {
private Long id;
@ApiParam(value ="组织代码")
private String organizeCode;
@ApiParam(value = "创建用户")
private String createUser;
@ApiParam(value = "创建日期")
private String createDatetime;
@ApiParam(value = "修改人")
private String modifyUser;
@ApiParam(value = "修改日期")
private String modifyDatetime;
@ApiParam(value = "有效性",example = "1")
private Integer isValid;
@ApiParam(value = "是否已删除",example = "2")
private Integer isDeleted;
@ApiParam("物料编码")
private String partNo;
@ApiParam("对象代码")
private String objectCode;
@ApiParam("生产线")
private String workCenterCode;
@ApiParam("对象名称")
private String objectName;
public MesPartObjectModel(Long id, String organizeCode, String createUser, String createDatetime, String modifyUser, String modifyDatetime, Integer isValid, Integer isDeleted, String partNo, String objectCode, String workCenterCode, String objectName) {
this.id = id;
this.organizeCode = organizeCode;
this.createUser = createUser;
this.createDatetime = createDatetime;
this.modifyUser = modifyUser;
this.modifyDatetime = modifyDatetime;
this.isValid = isValid;
this.isDeleted = isDeleted;
this.partNo = partNo;
this.objectCode = objectCode;
this.workCenterCode = workCenterCode;
this.objectName = objectName;
}
}

@ -74,6 +74,12 @@ public class ProdBindRecordModel implements Serializable {
@ApiParam(value = "动作类型")
private String actionType;
@ApiParam(value = "是否绑定关键件名称")
private String isBindKeyName;
@ApiParam(value = "动作类型名称")
private String actionTypeName;
public ProdBindRecordModel() {
}

@ -66,6 +66,9 @@ public class ProductBiModel {
@ApiParam("x坐标内容")
private List<String> xAxis;
@ApiParam("一些携带值 eg:异常类型,异常次数")
private Map<String, Object> carryMap;
@ApiParam("图表显示的数据")
private List<ProductBiSeriesModel> series;

@ -82,11 +82,17 @@ public class QcCheckDataModel {
@ApiParam("物料名称")
private String partName;
@ApiParam(value = "修改人")
private String modifyUser;
@ApiParam(value = "修改日期")
private String modifyDatetime;
public QcCheckDataModel() {
}
public QcCheckDataModel(Long id, String organizeCode, String createUser, String createDatetime, String checkId, String partNo, String workCenterCode, String workCellCode, Integer checkType, String checkItem, String checkStandard, String checkGuide, String checkFrequency, String checkValue, String checkResult, String sn, Integer qty, String memo, String orderNo, String custCode, String shiftCode, String shiftGroupName, String squadLeader, String workCellName, String partName) {
public QcCheckDataModel(Long id, String organizeCode, String createUser, String createDatetime, String checkId, String partNo, String workCenterCode, String workCellCode, Integer checkType, String checkItem, String checkStandard, String checkGuide, String checkFrequency, String checkValue, String checkResult, String sn, Integer qty, String memo, String orderNo, String custCode, String shiftCode, String shiftGroupName, String squadLeader, String workCellName, String partName, String modifyUser, String modifyDatetime) {
this.id = id;
this.organizeCode = organizeCode;
this.createUser = createUser;
@ -112,5 +118,7 @@ public class QcCheckDataModel {
this.squadLeader = squadLeader;
this.workCellName = workCellName;
this.partName = partName;
this.modifyUser = modifyUser;
this.modifyDatetime = modifyDatetime;
}
}

@ -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.IfWmsPpm;
/**
* @Description:
* @Reference:
* @Author: joke.wang
* @CreateDate: 2019\11\18 10:34
* @Modify:
**/
public interface IfWmsPpmRepository extends BaseRepository<IfWmsPpm, Long> {
}

@ -2057,4 +2057,28 @@ public class MesHqlPack {
}
return packBean;
}
/**
*
*
* @param qualityStandardCfg
* @param organizeCode
* @return
*/
public static DdlPackBean getMesQualityStandardCfg(MesQualityStandardCfg qualityStandardCfg, String organizeCode) {
DdlPackBean packBean = getAllBaseDataByNormalPro(qualityStandardCfg, organizeCode);
if (!StringUtils.isEmpty(qualityStandardCfg.getStandardType())) {
DdlPreparedPack.getNumEqualPack(qualityStandardCfg.getStandardType(), "standardType", packBean);
}
if (!StringUtils.isEmpty(qualityStandardCfg.getObjectKey())) {
DdlPreparedPack.getStringLikerPack(qualityStandardCfg.getObjectKey(), "objectKey", packBean);
}
if (!StringUtils.isEmpty(qualityStandardCfg.getObjectType())) {
DdlPreparedPack.getNumEqualPack(qualityStandardCfg.getObjectType(), "objectType", packBean);
}
if (!StringUtils.isEmpty(qualityStandardCfg.getObjectKeyValue())) {
DdlPreparedPack.getStringLikerPack(qualityStandardCfg.getObjectKeyValue(), "objectKeyValue", packBean);
}
return packBean;
}
}

@ -40,6 +40,9 @@ public class StationRequestBean implements Serializable {
@ApiParam("工作单元代码")
private String workCellCode;
@ApiParam("工作单元名称")
private String workCellName;
@ApiParam("流程代码")
private String routeCode;

@ -49,6 +49,7 @@ public class SysLocaleResource extends BaseBean {
@Column(name="language_code")
@ApiParam(value = "语言编码",example = "浏览器语言编码")
@AnnoOutputColumn
private String languageCode;
@Column(name="language_name_rdd")
@ -57,6 +58,7 @@ public class SysLocaleResource extends BaseBean {
@Column(name="resource_key")
@ApiParam(value = "资源KEY",example = "格式A.B全部大写参考命名规范开发文档")
@AnnoOutputColumn
private String resourceKey;
@Lob

@ -85,6 +85,10 @@ public class BasVendor extends BaseBean{
@ApiParam("小数位符号")
private String decimals;
//20-承运商
@Column(name = "VENDOR_TYPE")
private Integer vendorType;
public BasVendor() {
}

@ -99,6 +99,7 @@ public class WmsDocMovementMaster extends BaseBean {
public Integer isTask;
@Column(name = "PRIORITY")
@AnnoOutputColumn(refClass = WmsEnumUtil.PRIORITY.class, refForeignKey = "value", value = "description")
@ApiParam(value = "优先级", example = "1")
public Integer priority;

@ -170,6 +170,11 @@ public class WmsPart extends BaseBean {
@ApiParam(value = "待质检比例", example = "1")
private Double proportion;
@Column(name = "IS_VALUABLE", columnDefinition = "int default 2")
@ApiParam(value = "贵重物料")
@AnnoOutputColumn(refClass = WmsEnumUtil.IS_VALUABLE.class, refForeignKey = "value", value = "description")
private Integer isValuable;
@Transient
@ApiParam("总数量")
private Double qty;

@ -32,7 +32,7 @@ public class WmsPullTaskDetails extends BaseBean{
@Column(name="WROKORDER_NO")
@ApiParam("工单号")
private String woekorderNo;
private String wrokorderNo;
@Column(name="ITEM")
@ApiParam(value = "行号", example = "0")
@ -47,8 +47,8 @@ public class WmsPullTaskDetails extends BaseBean{
private String locateNo;
@Column(name="LOCATE_CAPACITY")
@ApiParam("库位容量")
private String locateCapacity;
@ApiParam(value = "库位容量", example = "0")
private Integer locateCapacity = 0;
@Column(name="PART_NO")
@ApiParam("零件编号")
@ -58,49 +58,53 @@ public class WmsPullTaskDetails extends BaseBean{
@ApiParam("零件名称")
private String partNameRdd;
@Column(name="PLAN_PACK_QTY")
@ApiParam(value = "计划数量", example = "0d")
private Double planPackQty = 0d;
@Column(name="PLAN_PACK_COUNT")
@ApiParam(value = "计划容器数", example = "0")
private Integer planPackCount = 0;
@ApiParam(value = "计划容器数", example = "0d")
private Double planPackCount = 0d;
@Column(name="FIRST_BATCH_QTY")
@ApiParam(value = "首批批量", example = "0")
private Integer firstBatchQty = 0;
@ApiParam(value = "首批批量", example = "0d")
private Double firstBatchQty = 0d;
@Column(name="FIRST_PACK_COUNT")
@ApiParam(value = "首批容器数", example = "0")
private Integer firstPackCount = 0;
@ApiParam(value = "首批容器数", example = "0d")
private Double firstPackCount = 0d;
@Column(name="REQUEST_QTY")
@ApiParam(value = "补货批量", example = "0")
private Integer requestQty = 0;
@ApiParam(value = "补货批量", example = "0d")
private Double requestQty = 0d;
@Column(name="REQUEST_PACK_COUNT")
@ApiParam(value = "补货容器数", example = "0")
private Integer requestPackCount = 0;
@ApiParam(value = "补货容器数", example = "0d")
private Double requestPackCount = 0d;
@Column(name="REQUEST_LOT_NO")
@ApiParam(value = "补货批次", example = "0")
private Integer requestLotNo = 0;
@ApiParam(value = "补货批次", example = "0d")
private Double requestLotNo = 0d;
@Column(name="REQUEST_TOTAL_COUNT")
@ApiParam(value = "补货累加次数", example = "0")
private Integer requestTotalCount = 0;
@ApiParam(value = "补货累加次数", example = "0d")
private Double requestTotalCount = 0d;
@Column(name="LAST_REQUEST_TIME")
@ApiParam("上一次补货时间")
private String lastRequestTtime;
@Column(name="BOOT_QTY")
@ApiParam(value = "尾箱批量", example = "0")
private Integer bootQty = 0;
@ApiParam(value = "尾箱批量", example = "0d")
private Double bootQty = 0d;
@Column(name="BOOT_PACK_COUNT")
@ApiParam(value = "尾箱容器数", example = "0")
private Integer bootPackCount = 0;
@ApiParam(value = "尾箱容器数", example = "0d")
private Double bootPackCount = 0d;
@Column(name="BOOT_LOT_NO")
@ApiParam(value = "尾箱批次", example = "0")
private Integer bootLotNo = 0;
@ApiParam(value = "尾箱批次", example = "0d")
private Double bootLotNo = 0d;
@Column(name="ORDER_STATUS")
@ApiParam(value = "单据状态", example = "0")
@ -110,48 +114,56 @@ public class WmsPullTaskDetails extends BaseBean{
return orderStatus == null ? 0 : this.orderStatus.intValue();
}
public Integer getBootLotNo() {
return bootLotNo == null ? 0 : this.bootLotNo.intValue();
public Double getBootLotNo() {
return bootLotNo == null ? 0d : this.bootLotNo.doubleValue();
}
public Integer getBootPackCount() {
return bootPackCount == null ? 0 : this.bootPackCount.intValue();
public Double getBootPackCount() {
return bootPackCount == null ? 0d : this.bootPackCount.doubleValue();
}
public Integer getBootQty() {
return bootQty == null ? 0 : this.bootQty.intValue();
public Double getBootQty() {
return bootQty == null ? 0d : this.bootQty.doubleValue();
}
public Integer getRequestTotalCount() {
return requestTotalCount == null ? 0 : this.requestTotalCount.intValue();
public Double getRequestTotalCount() {
return requestTotalCount == null ? 0d : this.requestTotalCount.doubleValue();
}
public Integer getRequestLotNo() {
return requestLotNo == null ? 0 : this.requestLotNo.intValue();
public Double getRequestLotNo() {
return requestLotNo == null ? 0d : this.requestLotNo.doubleValue();
}
public Integer getRequestPackCount() {
return requestPackCount == null ? 0 : this.requestPackCount.intValue();
public Double getRequestPackCount() {
return requestPackCount == null ? 0d : this.requestPackCount.doubleValue();
}
public Integer getRequestQty() {
return requestQty == null ? 0 : this.requestQty.intValue();
public Double getRequestQty() {
return requestQty == null ? 0d : this.requestQty.doubleValue();
}
public Integer getFirstPackCount() {
return firstPackCount == null ? 0 : this.firstPackCount.intValue();
public Double getFirstPackCount() {
return firstPackCount == null ? 0d : this.firstPackCount.doubleValue();
}
public Integer getFirstBatchQty() {
return firstBatchQty == null ? 0 : this.firstBatchQty.intValue();
public Double getFirstBatchQty() {
return firstBatchQty == null ? 0d : this.firstBatchQty.doubleValue();
}
public Integer getPlanPackCount() {
return planPackCount == null ? 0 : this.planPackCount.intValue();
public Double getPlanPackCount() {
return planPackCount == null ? 0d : this.planPackCount.doubleValue();
}
public Integer getItem() {
return item == null ? 0 : this.item.intValue();
}
public Double getLocateCapacity() {
return locateCapacity == null ? 0d : this.locateCapacity.doubleValue();
}
public Double getPlanPackQty() {
return planPackQty == null ? 0d : this.planPackQty.doubleValue();
}
}

@ -2,6 +2,7 @@ package cn.estsh.i3plus.pojo.wms.bean;
import cn.estsh.i3plus.pojo.base.bean.BaseBean;
import cn.estsh.i3plus.pojo.wms.dto.WmsTmsShipModel;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiParam;
import lombok.Data;
@ -13,6 +14,7 @@ import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import javax.persistence.Transient;
import java.util.List;
/**
* @Description :
@ -103,4 +105,11 @@ public class WmsTmsShippingExt extends BaseBean {
@ApiParam("物料编码")
private String partNo;
@Transient
@ApiParam("关联单号")
private String refOrderNo;
@Transient
@ApiParam("打印模板列表")
private List<WmsTmsShipModel> shipModels;
}

@ -19,10 +19,9 @@ public class WmsTmsShipDto extends BaseDto implements Serializable {
@ApiParam("物料号")
private String partNo;
@ApiParam("运输状态")
private String carriageStatus;
@ApiParam("单据号")
private String orderNo;
private String moveNo;
@ApiParam("是否删除,默认否")
protected Integer isDeleted = 2;
@ -32,4 +31,31 @@ public class WmsTmsShipDto extends BaseDto implements Serializable {
@ApiParam("工厂代码")
protected String organizeCode;
@ApiParam("ID")
private Long id;
@ApiParam(value ="道口")
private String dockNo;
@ApiParam(value ="承运商编号")
private String vendorNo;
@ApiParam(value ="承运商名称RDD")
private String vendorName;
@ApiParam(value ="驾驶员编号")
private String driverNo;
@ApiParam(value ="驾驶员名称RDD")
private String driverName;
@ApiParam(value ="驾驶员联系方式RDD")
private String phone;
@ApiParam(value ="单据状态")
private Integer orderStatus;
@ApiParam(value ="车牌号RDD")
private String carNo;
}

@ -0,0 +1,26 @@
package cn.estsh.i3plus.pojo.wms.dto;
import io.swagger.annotations.ApiParam;
import lombok.Data;
/**
* @Description :
* @Reference :
* @Author : gcj
* @CreateDate : 2019-12-06 15:50
* @Modify:
**/
@Data
public class WmsTmsShipModel {
@ApiParam("物料编码")
private String partNo;
@ApiParam("物料名称")
private String partName;
@ApiParam("需求数量")
private Double qty;
@ApiParam("实际数量")
private Double recQty;
@ApiParam("单位")
private String unit;
}

@ -6,18 +6,14 @@ import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.base.enumutil.WmsEnumUtil;
import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack;
import cn.estsh.i3plus.pojo.base.tool.HqlPack;
import cn.estsh.i3plus.pojo.base.util.StringUtil;
import cn.estsh.i3plus.pojo.wms.bean.*;
import cn.estsh.i3plus.pojo.wms.dbinterface.WmsInterfaceDataMapper;
import cn.estsh.i3plus.pojo.wms.engine.rule.EngineRulePersistence;
import cn.estsh.i3plus.pojo.wms.engine.script.EngineScriptPersistence;
import com.alibaba.fastjson.JSONObject;
import com.google.common.base.Strings;
import org.apache.commons.beanutils.BeanUtils;
import org.apache.commons.lang3.StringUtils;
import java.lang.reflect.Constructor;
import java.lang.reflect.Field;
import java.util.*;
import java.util.stream.Collectors;
@ -420,6 +416,7 @@ public class WmsHqlPack {
DdlPreparedPack.getStringLikerPack(basVendor.getVendorAddr(), "vendorAddr", result);
DdlPreparedPack.getStringLikerPack(basVendor.getVendorEmail(), "vendorEmail", result);
DdlPreparedPack.getNumEqualPack(basVendor.getIsAsn(), "isAsn", result);
DdlPreparedPack.getNumEqualPack(basVendor.getVendorType(), "vendorType", result);
getStringBuilderPack(basVendor, result);
@ -1203,6 +1200,8 @@ public class WmsHqlPack {
DdlPreparedPack.getStringEqualPack(wmsQCMaster.getRefType(), "refType", result);
//关联单据号
DdlPreparedPack.getStringLikerPack(wmsQCMaster.getRefSrc(), "refSrc", result);
//单据状态
DdlPreparedPack.getNumEqualPack(wmsQCMaster.getOrderStatus(), "orderStatus", result);
getStringBuilderPack(wmsQCMaster, result);
@ -2611,4 +2610,39 @@ public class WmsHqlPack {
return result;
}
/**
*
*
* @param wmsPullTaskMaster
* @return
*/
public static DdlPackBean packHqlWmsPullTaskMaster(WmsPullTaskMaster wmsPullTaskMaster,String statusList) {
DdlPackBean result = new DdlPackBean();
DdlPreparedPack.getInPack(statusList, "orderStatus", result);
DdlPreparedPack.getStringLikerPack(wmsPullTaskMaster.getWoekorderNo(), "woekorderNo", result);
DdlPreparedPack.getStringEqualPack(wmsPullTaskMaster.getPdlineNo(), "pdlineNo", result);
DdlPreparedPack.getStringBiggerPack(wmsPullTaskMaster.getStartProductTime(), "startProductTime", result);
DdlPreparedPack.getStringSmallerPack(wmsPullTaskMaster.getEndProductTime(), "endProductTime", result);
getStringBuilderPack(wmsPullTaskMaster, result);
return result;
}
/**
*
*
* @param wmsPullTaskDetails
* @return
*/
public static DdlPackBean packHqlWmsPullTaskDetails(WmsPullTaskDetails wmsPullTaskDetails) {
DdlPackBean result = new DdlPackBean();
DdlPreparedPack.getStringLikerPack(wmsPullTaskDetails.getWrokorderNo(), "wrokorderNo", result);
DdlPreparedPack.getStringLikerPack(wmsPullTaskDetails.getPartNo(), "partNo", result);
getStringBuilderPack(wmsPullTaskDetails, result);
return result;
}
}

Loading…
Cancel
Save