skyouc
2024-12-21 c635d78b479510ebe2556a420948effcd30a0731
zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/ShelvesRule.java
@@ -1,253 +1,253 @@
package com.zy.asrs.wms.asrs.entity;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.annotation.TableLogic;
import java.text.SimpleDateFormat;
import java.util.*;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.zy.asrs.wms.asrs.service.LanewayRuleService;
import com.zy.asrs.wms.asrs.service.ShelvesRuleDetlService;
import com.zy.asrs.wms.system.entity.Host;
import com.zy.asrs.wms.system.entity.User;
import org.springframework.format.annotation.DateTimeFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import com.zy.asrs.framework.common.Cools;
import com.zy.asrs.framework.common.SpringUtils;
import com.zy.asrs.wms.system.service.UserService;
import com.zy.asrs.wms.system.service.HostService;
import com.zy.asrs.common.utils.Synchro;
import java.io.Serializable;
import java.util.Date;
@Data
@TableName("strategy_shelves_rule")
public class ShelvesRule implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * ID
     */
    @ApiModelProperty(value= "ID")
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;
    /**
     * 规则名称
     */
    @ApiModelProperty(value= "规则名称")
    private String name;
    /**
     * 规则类型 0: 优先平层  1: 优先立体
     */
    @ApiModelProperty(value= "规则类型 0: 优先平层  1: 优先立体  ")
    private Integer ruleType;
    /**
     * 巷道
     */
    @ApiModelProperty(value= "巷道")
    private String lane;
    /**
     * 所属机构
     */
    @ApiModelProperty(value= "所属机构")
    private Long hostId;
    /**
     * 状态 1: 正常  0: 禁用
     */
    @ApiModelProperty(value= "状态 1: 正常  0: 禁用  ")
    private Integer status;
    /**
     * 是否删除 1: 是  0: 否
     */
    @ApiModelProperty(value= "是否删除 1: 是  0: 否  ")
    private Integer deleted;
    /**
     * 添加时间
     */
    @ApiModelProperty(value= "添加时间")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private Date createTime;
    /**
     * 添加人员
     */
    @ApiModelProperty(value= "添加人员")
    private Long createBy;
    /**
     * 修改时间
     */
    @ApiModelProperty(value= "修改时间")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private Date updateTime;
    /**
     * 修改人员
     */
    @ApiModelProperty(value= "修改人员")
    private Long updateBy;
    /**
     * 备注
     */
    @ApiModelProperty(value= "备注")
    private String memo;
    public ShelvesRule() {}
    public ShelvesRule(Integer ruleType,String lane,Long hostId,Integer status,Integer deleted,Date createTime,Long createBy,Date updateTime,Long updateBy,String memo) {
        this.ruleType = ruleType;
        this.lane = lane;
        this.hostId = hostId;
        this.status = status;
        this.deleted = deleted;
        this.createTime = createTime;
        this.createBy = createBy;
        this.updateTime = updateTime;
        this.updateBy = updateBy;
        this.memo = memo;
    }
//    ShelvesRule shelvesRule = new ShelvesRule(
//            null,    // 状态
//            null,    // 巷道
//            null,    // 所属机构
//            null,    // 状态
//            null,    // 是否删除
//            null,    // 添加时间
//            null,    // 添加人员
//            null,    // 修改时间
//            null,    // 修改人员
//            null    // 备注
//    );
    public String getLane$() {
        LanewayRuleService service = SpringUtils.getBean(LanewayRuleService.class);
        if (null == this.lane){ return ""; }
        List<Long> list = JSON.parseArray(this.lane, Long.class);
        if (list.isEmpty()) {
            return "";
        }
        List<LanewayRule> lanewayRules = service.listByIds(list);
        ArrayList<Integer> data = new ArrayList<>();
        for (LanewayRule lanewayRule : lanewayRules) {
            data.add(lanewayRule.getLaneNo());
        }
        return JSON.toJSONString(data);
    }
    public List<Long> getLaneList() {
        if (null == this.lane){ return null; }
        List<Long> list = JSON.parseArray(this.lane, Long.class);
        if (list.isEmpty()) {
            return null;
        }
        return list;
    }
    public List<ShelvesRuleDetl> getRuleDetl$() {
        ShelvesRuleDetlService service = SpringUtils.getBean(ShelvesRuleDetlService.class);
        return service.list(new LambdaQueryWrapper<ShelvesRuleDetl>().eq(ShelvesRuleDetl::getRuleId, id));
    }
    public String getRuleType$(){
        if (null == this.ruleType){ return null; }
        switch (this.ruleType){
            case 0:
                return "优先平层";
            case 1:
                return "优先立体";
            default:
                return String.valueOf(this.ruleType);
        }
    }
    public String getHostId$(){
        HostService service = SpringUtils.getBean(HostService.class);
        Host host = service.getById(this.hostId);
        if (!Cools.isEmpty(host)){
            return String.valueOf(host.getName());
        }
        return null;
    }
    public String getStatus$(){
        if (null == this.status){ return null; }
        switch (this.status){
            case 1:
                return "正常";
            case 0:
                return "禁用";
            default:
                return String.valueOf(this.status);
        }
    }
    public String getDeleted$(){
        if (null == this.deleted){ return null; }
        switch (this.deleted){
            case 1:
                return "是";
            case 0:
                return "否";
            default:
                return String.valueOf(this.deleted);
        }
    }
    public String getCreateTime$(){
        if (Cools.isEmpty(this.createTime)){
            return "";
        }
        return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.createTime);
    }
    public String getCreateBy$(){
        UserService service = SpringUtils.getBean(UserService.class);
        User user = service.getById(this.createBy);
        if (!Cools.isEmpty(user)){
            return String.valueOf(user.getNickname());
        }
        return null;
    }
    public String getUpdateTime$(){
        if (Cools.isEmpty(this.updateTime)){
            return "";
        }
        return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.updateTime);
    }
    public String getUpdateBy$(){
        UserService service = SpringUtils.getBean(UserService.class);
        User user = service.getById(this.updateBy);
        if (!Cools.isEmpty(user)){
            return String.valueOf(user.getNickname());
        }
        return null;
    }
    public void sync(Object source) {
        Synchro.Copy(source, this);
    }
}
package com.zy.asrs.wms.asrs.entity;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.annotation.TableLogic;
import java.text.SimpleDateFormat;
import java.util.*;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.zy.asrs.wms.asrs.service.LanewayRuleService;
import com.zy.asrs.wms.asrs.service.ShelvesRuleDetlService;
import com.zy.asrs.wms.system.entity.Host;
import com.zy.asrs.wms.system.entity.User;
import org.springframework.format.annotation.DateTimeFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import com.zy.asrs.framework.common.Cools;
import com.zy.asrs.framework.common.SpringUtils;
import com.zy.asrs.wms.system.service.UserService;
import com.zy.asrs.wms.system.service.HostService;
import com.zy.asrs.common.utils.Synchro;
import java.io.Serializable;
import java.util.Date;
@Data
@TableName("strategy_shelves_rule")
public class ShelvesRule implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * ID
     */
    @ApiModelProperty(value= "ID")
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;
    /**
     * 规则名称
     */
    @ApiModelProperty(value= "规则名称")
    private String name;
    /**
     * 规则类型 0: 优先平层  1: 优先立体
     */
    @ApiModelProperty(value= "规则类型 0: 优先平层  1: 优先立体  ")
    private Integer ruleType;
    /**
     * 巷道
     */
    @ApiModelProperty(value= "巷道")
    private String lane;
    /**
     * 所属机构
     */
    @ApiModelProperty(value= "所属机构")
    private Long hostId;
    /**
     * 状态 1: 正常  0: 禁用
     */
    @ApiModelProperty(value= "状态 1: 正常  0: 禁用  ")
    private Integer status;
    /**
     * 是否删除 1: 是  0: 否
     */
    @ApiModelProperty(value= "是否删除 1: 是  0: 否  ")
    private Integer deleted;
    /**
     * 添加时间
     */
    @ApiModelProperty(value= "添加时间")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private Date createTime;
    /**
     * 添加人员
     */
    @ApiModelProperty(value= "添加人员")
    private Long createBy;
    /**
     * 修改时间
     */
    @ApiModelProperty(value= "修改时间")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private Date updateTime;
    /**
     * 修改人员
     */
    @ApiModelProperty(value= "修改人员")
    private Long updateBy;
    /**
     * 备注
     */
    @ApiModelProperty(value= "备注")
    private String memo;
    public ShelvesRule() {}
    public ShelvesRule(Integer ruleType,String lane,Long hostId,Integer status,Integer deleted,Date createTime,Long createBy,Date updateTime,Long updateBy,String memo) {
        this.ruleType = ruleType;
        this.lane = lane;
        this.hostId = hostId;
        this.status = status;
        this.deleted = deleted;
        this.createTime = createTime;
        this.createBy = createBy;
        this.updateTime = updateTime;
        this.updateBy = updateBy;
        this.memo = memo;
    }
//    ShelvesRule shelvesRule = new ShelvesRule(
//            null,    // 状态
//            null,    // 巷道
//            null,    // 所属机构
//            null,    // 状态
//            null,    // 是否删除
//            null,    // 添加时间
//            null,    // 添加人员
//            null,    // 修改时间
//            null,    // 修改人员
//            null    // 备注
//    );
    public String getLane$() {
        LanewayRuleService service = SpringUtils.getBean(LanewayRuleService.class);
        if (null == this.lane){ return ""; }
        List<Long> list = JSON.parseArray(this.lane, Long.class);
        if (list.isEmpty()) {
            return "";
        }
        List<LanewayRule> lanewayRules = service.listByIds(list);
        ArrayList<Integer> data = new ArrayList<>();
        for (LanewayRule lanewayRule : lanewayRules) {
            data.add(lanewayRule.getLaneNo());
        }
        return JSON.toJSONString(data);
    }
    public List<Long> getLaneList() {
        if (null == this.lane){ return null; }
        List<Long> list = JSON.parseArray(this.lane, Long.class);
        if (list.isEmpty()) {
            return null;
        }
        return list;
    }
    public List<ShelvesRuleDetl> getRuleDetl$() {
        ShelvesRuleDetlService service = SpringUtils.getBean(ShelvesRuleDetlService.class);
        return service.list(new LambdaQueryWrapper<ShelvesRuleDetl>().eq(ShelvesRuleDetl::getRuleId, id));
    }
    public String getRuleType$(){
        if (null == this.ruleType){ return null; }
        switch (this.ruleType){
            case 0:
                return "优先平层";
            case 1:
                return "优先立体";
            default:
                return String.valueOf(this.ruleType);
        }
    }
    public String getHostId$(){
        HostService service = SpringUtils.getBean(HostService.class);
        Host host = service.getById(this.hostId);
        if (!Cools.isEmpty(host)){
            return String.valueOf(host.getName());
        }
        return null;
    }
    public String getStatus$(){
        if (null == this.status){ return null; }
        switch (this.status){
            case 1:
                return "正常";
            case 0:
                return "禁用";
            default:
                return String.valueOf(this.status);
        }
    }
    public String getDeleted$(){
        if (null == this.deleted){ return null; }
        switch (this.deleted){
            case 1:
                return "是";
            case 0:
                return "否";
            default:
                return String.valueOf(this.deleted);
        }
    }
    public String getCreateTime$(){
        if (Cools.isEmpty(this.createTime)){
            return "";
        }
        return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.createTime);
    }
    public String getCreateBy$(){
        UserService service = SpringUtils.getBean(UserService.class);
        User user = service.getById(this.createBy);
        if (!Cools.isEmpty(user)){
            return String.valueOf(user.getNickname());
        }
        return null;
    }
    public String getUpdateTime$(){
        if (Cools.isEmpty(this.updateTime)){
            return "";
        }
        return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.updateTime);
    }
    public String getUpdateBy$(){
        UserService service = SpringUtils.getBean(UserService.class);
        User user = service.getById(this.updateBy);
        if (!Cools.isEmpty(user)){
            return String.valueOf(user.getNickname());
        }
        return null;
    }
    public void sync(Object source) {
        Synchro.Copy(source, this);
    }
}