diff --git a/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/bean/ShippingTime.java b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/bean/ShippingTime.java index 9e637b2..25967a8 100644 --- a/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/bean/ShippingTime.java +++ b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/bean/ShippingTime.java @@ -1,6 +1,8 @@ package cn.estsh.i3plus.pojo.aps.bean; import cn.estsh.i3plus.pojo.aps.common.BaseAPS; +import cn.estsh.i3plus.pojo.aps.common.BeanRelation; +import cn.estsh.i3plus.pojo.aps.holders.EShippingTime; import io.swagger.annotations.Api; import io.swagger.annotations.ApiParam; import lombok.Data; @@ -21,27 +23,55 @@ import javax.persistence.Table; @Table(name = "APS_SHIPPING_TIME") @Api("运输时间") public class ShippingTime extends BaseAPS { + @Column(name="TIME") + @ApiParam(value ="运输时间") + private String time; + + @Column(name="PRIORITY") + @ApiParam(value ="优先级") + private Integer priority; + @Column(name="PREV_RES_CODE") - @ApiParam(value ="前资源编码") - private String prevResCode; + @ApiParam(value ="前资源对象Id") + private Long prevResId; @Column(name="POST_RES_CODE") - @ApiParam(value ="后资源编码") - private String postResCode; + @ApiParam(value ="后资源对象Id") + private Long postResId; @Column(name="PREV_STAND_CODE") - @ApiParam(value ="前标准工序编码") - private String prevStandCode; + @ApiParam(value ="前标准工序对象Id") + private Long prevStandId; @Column(name="POST_STAND_CODE") - @ApiParam(value ="后标准工序编码") - private String postStandCode; + @ApiParam(value ="后标准工序对象Id") + private Long postStandId; - @Column(name="TIME") - @ApiParam(value ="运输时间") - private String time; + public Resource getPrevRes() {return BeanRelation.get(this, EShippingTime.PrevRes); } - @Column(name="PRIORITY") - @ApiParam(value ="优先级") - private Integer priority; + public void setPrevRes(Resource res) { + this.prevResId = res != null ? res.getId() : 0l; + BeanRelation.set(this, EShippingTime.PrevRes, res); + } + + public Resource getPostRes() { return BeanRelation.get(this, EShippingTime.PostRes); } + + public void setPostRes(Resource res) { + this.postResId = res != null ? res.getId() : 0l; + BeanRelation.set(this, EShippingTime.PostRes, res); + } + + public StandOperation getPrevStand() { return BeanRelation.get(this, EShippingTime.PrevStand);} + + public void setPrevStand(StandOperation stand) { + this.prevStandId = stand != null ? stand.getId() : 0l; + BeanRelation.set(this, EShippingTime.PrevStand, stand); + } + + public StandOperation getPostStand() { return BeanRelation.get(this, EShippingTime.PostStand); } + + public void setPostStand(StandOperation stand) { + this.postStandId = stand != null ? stand.getId() : 0l; + BeanRelation.set(this, EShippingTime.PostStand, stand); + } } diff --git a/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/common/BeanRelation.java b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/common/BeanRelation.java index 700a1cf..fa3db91 100644 --- a/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/common/BeanRelation.java +++ b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/common/BeanRelation.java @@ -202,30 +202,26 @@ public class BeanRelation { } } - public static List lastList(BaseBean entity, Enum... args) { - List result = new ArrayList(); - lastListImpl(result, entity, null, args, 0); - return result; - } - - public static List lastList(BaseBean entity, Predicate filter, Enum... args) { - List result = new ArrayList(); - lastListImpl(result, entity, filter, args, 0); + public static List lastList(BaseBean bean, Enum... holders) { + List result = new ArrayList<>(); + lastListImpl(result, bean, bean, holders, 0); return result; } - - @SuppressWarnings("unchecked") - private final static boolean lastListImpl(List result, BaseBean entity, Predicate filter, - Enum[] args, int index) { - if (index >= args.length) { + private final static boolean lastListImpl(List result, BaseBean bean, BaseBean self, + Enum[] holders, int index) { + if (index >= holders.length) { + if (self == bean) { + return false; + } index = 0; + self = bean; } boolean bNotLast = true; - List relaEntities = list(entity, args[index]); - for (BaseBean relaEntity : relaEntities) { - if (lastListImpl(result, relaEntity, filter, args, index + 1)) { - result.add((T)relaEntity); + List nextBeans = list(bean, holders[index]); + for (BaseBean nextBean : nextBeans) { + if (lastListImpl(result, nextBean, self, holders, index + 1)) { + result.add((T)nextBean); bNotLast = false; } } diff --git a/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/holders/EShippingTime.java b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/holders/EShippingTime.java new file mode 100644 index 0000000..100379b --- /dev/null +++ b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/holders/EShippingTime.java @@ -0,0 +1,8 @@ +package cn.estsh.i3plus.pojo.aps.holders; + +public enum EShippingTime { + PrevRes, // 前资源 + PostRes, // 后资源 + PrevStand, // 前标准工序 + PostStand // 后标准工序 +} diff --git a/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/model/ResourceCompose.java b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/model/ResourceCompose.java index 314ecfa..b735390 100644 --- a/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/model/ResourceCompose.java +++ b/modules/i3plus-pojo-aps/src/main/java/cn/estsh/i3plus/pojo/aps/model/ResourceCompose.java @@ -2,6 +2,7 @@ package cn.estsh.i3plus.pojo.aps.model; import cn.estsh.i3plus.pojo.aps.bean.WorkResource; +import java.util.ArrayList; import java.util.List; /** @@ -14,5 +15,5 @@ import java.util.List; **/ public class ResourceCompose { public WorkResource resource; - public List assResource; + public List assResource = new ArrayList<>(); } diff --git a/modules/i3plus-pojo-aps/src/main/resources/relations/ShippingTime.xml b/modules/i3plus-pojo-aps/src/main/resources/relations/ShippingTime.xml new file mode 100644 index 0000000..c51acb0 --- /dev/null +++ b/modules/i3plus-pojo-aps/src/main/resources/relations/ShippingTime.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file