zy-acs-manager/src/main/java/com/zy/acs/manager/core/scheduler/AutoRunScheduler.java
@@ -57,13 +57,19 @@ @Autowired private SnowflakeIdWorker snowflakeIdWorker; // @Scheduled(fixedRate = 500) // 固定频率执行,不同步 private Integer num = 0; private Integer max = 2; // @Scheduled(fixedRate = 500) // 固定频率执行,不同步 @Scheduled(fixedDelay = 1000) // 固定频率执行,同步 // @Scheduled(cron = "0/1 * * * * ? ") private void execute() { if (configService.getVal("TaskAssignMode", Boolean.class)) { String autoRunAreas = configService.getVal("autoRunAreas", String.class); if (Cools.isEmpty(autoRunAreas)) { return; } if (Cools.isEmpty(autoRunAreas)) { return; } for (char c : autoRunAreas.toCharArray()) { switch (c) { case '1': @@ -85,10 +91,12 @@ break; } } }else { if (configService.getVal("InAndOutMode", Boolean.class,false)) { } else { if (configService.getVal("InAndOutMode", Boolean.class, false)) { String autoRunAreas = configService.getVal("autoRunAreas", String.class); if (Cools.isEmpty(autoRunAreas)) { return; } if (Cools.isEmpty(autoRunAreas)) { return; } for (char c : autoRunAreas.toCharArray()) { switch (c) { case '1': @@ -116,7 +124,9 @@ private void autoRun(List<Integer> locGroupList, List<String> staGroupList, List<String> agvGroupList) { int availableAgvCount = this.getAvailableAgvCount(agvGroupList); if (0 == availableAgvCount) { return; } if (0 == availableAgvCount) { return; } List<String> staPreNos = getStaPrefixes(staGroupList); String staTaskMemo = "DEMO_STA_" + String.join("-", staPreNos); @@ -132,18 +142,22 @@ private void autoOut(List<Integer> locGroupList, List<String> staGroupList, List<String> agvGroupList) { int availableAgvCount = this.getAvailableAgvCount(agvGroupList); if (0 == availableAgvCount) { return; } if (0 == availableAgvCount) { return; } List<String> staPreNos = getStaPrefixes(staGroupList); String staTaskMemo = "DEMO_STA_" + String.join("-", staPreNos); // 出库 this.runLocToSta(locGroupList, staGroupList, staTaskMemo); // 入库 if (staGroupList.contains("1007")){ this.runStaToLoc(locGroupList, staGroupList, staTaskMemo); List<Task> list = taskService.list(new LambdaQueryWrapper<Task>().eq(Task::getDestSta, 33).in(Task::getTaskSts, TaskStsType.INIT.val(), TaskStsType.WAITING.val(), TaskStsType.ASSIGN.val(), TaskStsType.PROGRESS.val())); if (Cools.isEmpty(list) && num < max) { // 出库 this.runLocToSSXSta(locGroupList, staGroupList, staTaskMemo); } List<Task> list2 = taskService.list(new LambdaQueryWrapper<Task>().eq(Task::getOriSta, 34).in(Task::getTaskSts, TaskStsType.INIT.val(), TaskStsType.WAITING.val(), TaskStsType.ASSIGN.val(), TaskStsType.PROGRESS.val())); if (Cools.isEmpty(list2) && num > 0) { // 入库 this.runXXSStaToLoc(locGroupList, staGroupList, staTaskMemo); } } // 入库 @@ -153,31 +167,39 @@ AgvModel agvModel = agvModelService.getOne(new LambdaQueryWrapper<AgvModel>().eq(AgvModel::getType, AgvModelType.CTU_BOX_TRANSPORT_AGV.toString())); // if (null == agvModel) { // return; // } if (null == agvModel) { return; } // STOCK LambdaQueryWrapper<Sta> stockWrapper = new LambdaQueryWrapper<Sta>() .eq(Sta::getStaSts, StaStsType.STOCK.val()) .eq(Sta::getStatus, StatusType.ENABLE.val) .eq(Sta::getInEnable,"Y") .eq(Sta::getInEnable, "Y") .in(Sta::getStaNo, staGroupList); List<Sta> stockList = staService.list(stockWrapper); if (Cools.isEmpty(stockList)) { return; } if (Cools.isEmpty(stockList)) { return; } Collections.shuffle(stockList); // IDLE LambdaQueryWrapper<Loc> idleWrapper = new LambdaQueryWrapper<Loc>().eq(Loc::getLocSts, LocStsType.IDLE.val()); if (null != startRow) { idleWrapper.ge(Loc::getRow, startRow); } if (null != endRow) { idleWrapper.le(Loc::getRow, endRow); } if (null != startRow) { idleWrapper.ge(Loc::getRow, startRow); } if (null != endRow) { idleWrapper.le(Loc::getRow, endRow); } List<Loc> idleList = locService.list(idleWrapper); if (Cools.isEmpty(idleList)) { return; } if (Cools.isEmpty(idleList)) { return; } Collections.shuffle(idleList); OpenBusSubmitParam param = new OpenBusSubmitParam(); param.setBatch(String.valueOf(snowflakeIdWorker.nextId()).substring(13, 19)); for (int i = 0; i < Math.min(agvModel.getBackpack(), Math.min(stockList.size(), idleList.size())) ; i++) { for (int i = 0; i < Math.min(agvModel.getBackpack(), Math.min(stockList.size(), idleList.size())); i++) { Sta stockSta = stockList.get(i); Loc idleLoc = idleList.get(i); @@ -188,6 +210,61 @@ taskDto.setSeqNum(String.valueOf(snowflakeIdWorker.nextId()).substring(15, 19)); param.getTaskList().add(taskDto); } mainService.generateBusAndTask(param, memo); } private void runXXSStaToLoc(List<Integer> locGroupList, List<String> staGroupList, String memo) { Integer startRow = Collections.min(locGroupList); Integer endRow = Collections.max(locGroupList); AgvModel agvModel = agvModelService.getOne(new LambdaQueryWrapper<AgvModel>().eq(AgvModel::getType, AgvModelType.CTU_BOX_TRANSPORT_AGV.toString())); if (null == agvModel) { return; } // STOCK LambdaQueryWrapper<Sta> stockWrapper = new LambdaQueryWrapper<Sta>() //.eq(Sta::getStaSts, StaStsType.STOCK.val()) .eq(Sta::getStatus, StatusType.ENABLE.val) .eq(Sta::getInEnable, "Y") .in(Sta::getStaNo, staGroupList); List<Sta> stockList = staService.list(stockWrapper); if (Cools.isEmpty(stockList)) { return; } Collections.shuffle(stockList); // IDLE LambdaQueryWrapper<Loc> idleWrapper = new LambdaQueryWrapper<Loc>().eq(Loc::getLocSts, LocStsType.IDLE.val()); if (null != startRow) { idleWrapper.ge(Loc::getRow, startRow); } if (null != endRow) { idleWrapper.le(Loc::getRow, endRow); } List<Loc> idleList = locService.list(idleWrapper); if (Cools.isEmpty(idleList)) { return; } Collections.shuffle(idleList); OpenBusSubmitParam param = new OpenBusSubmitParam(); param.setBatch(String.valueOf(snowflakeIdWorker.nextId()).substring(13, 19)); for (int i = 0; i < max; i++) { Sta stockSta = stockList.get(0); Loc idleLoc = idleList.get(i); TaskDto taskDto = new TaskDto(); taskDto.setOriSta(stockSta.getStaNo()); taskDto.setDestLoc(idleLoc.getLocNo()); taskDto.setPriority(99); taskDto.setSeqNum(String.valueOf(snowflakeIdWorker.nextId()).substring(15, 19)); param.getTaskList().add(taskDto); num--; } mainService.generateBusAndTask(param, memo); @@ -208,7 +285,7 @@ LambdaQueryWrapper<Sta> idleWrapper = new LambdaQueryWrapper<Sta>() .eq(Sta::getStaSts, StaStsType.IDLE.val()) .eq(Sta::getStatus, StatusType.ENABLE.val) .eq(Sta::getOutEnable,"Y") .eq(Sta::getOutEnable, "Y") .in(Sta::getStaNo, staGroupList); List<Sta> idleList = staService.list(idleWrapper); if (Cools.isEmpty(idleList)) { @@ -218,8 +295,12 @@ // LOC STOCK LambdaQueryWrapper<Loc> stockWrapper = new LambdaQueryWrapper<Loc>().eq(Loc::getLocSts, LocStsType.STOCK.val()); if (null != startRow) { stockWrapper.ge(Loc::getRow, startRow); } if (null != endRow) { stockWrapper.le(Loc::getRow, endRow); } if (null != startRow) { stockWrapper.ge(Loc::getRow, startRow); } if (null != endRow) { stockWrapper.le(Loc::getRow, endRow); } List<Loc> stockList = locService.list(stockWrapper); if (Cools.isEmpty(stockList)) { return; @@ -239,6 +320,62 @@ taskDto.setSeqNum(String.valueOf(snowflakeIdWorker.nextId()).substring(15, 19)); param.getTaskList().add(taskDto); } mainService.generateBusAndTask(param, memo); } private void runLocToSSXSta(List<Integer> locGroupList, List<String> staGroupList, String memo) { Integer startRow = Collections.min(locGroupList); Integer endRow = Collections.max(locGroupList); AgvModel agvModel = agvModelService.getOne(new LambdaQueryWrapper<AgvModel>().eq(AgvModel::getType, AgvModelType.CTU_BOX_TRANSPORT_AGV.toString())); if (null == agvModel) { return; } int maxCapacity = agvModel.getBackpack(); // STA IDLE LambdaQueryWrapper<Sta> idleWrapper = new LambdaQueryWrapper<Sta>() //.eq(Sta::getStaSts, StaStsType.IDLE.val()) .eq(Sta::getStatus, StatusType.ENABLE.val) .eq(Sta::getOutEnable, "Y") .in(Sta::getStaNo, staGroupList); List<Sta> idleList = staService.list(idleWrapper); if (Cools.isEmpty(idleList)) { return; } Collections.shuffle(idleList); // LOC STOCK LambdaQueryWrapper<Loc> stockWrapper = new LambdaQueryWrapper<Loc>().eq(Loc::getLocSts, LocStsType.STOCK.val()); if (null != startRow) { stockWrapper.ge(Loc::getRow, startRow); } if (null != endRow) { stockWrapper.le(Loc::getRow, endRow); } List<Loc> stockList = locService.list(stockWrapper); if (Cools.isEmpty(stockList)) { return; } Collections.shuffle(stockList); OpenBusSubmitParam param = new OpenBusSubmitParam(); param.setBatch(String.valueOf(snowflakeIdWorker.nextId()).substring(13, 19)); for (int i = 0; i < max; i++) { Loc stockLoc = stockList.get(i); Sta idleSta = idleList.get(0); TaskDto taskDto = new TaskDto(); taskDto.setOriLoc(stockLoc.getLocNo()); taskDto.setDestSta(idleSta.getStaNo()); taskDto.setPriority(100); taskDto.setSeqNum(String.valueOf(snowflakeIdWorker.nextId()).substring(15, 19)); param.getTaskList().add(taskDto); num++; } mainService.generateBusAndTask(param, memo); @@ -269,8 +406,12 @@ // STOCK LambdaQueryWrapper<Loc> stockWrapper = new LambdaQueryWrapper<Loc>().eq(Loc::getLocSts, LocStsType.STOCK.val()); if (null != startRow) { stockWrapper.ge(Loc::getRow, startRow); } if (null != endRow) { stockWrapper.le(Loc::getRow, endRow); } if (null != startRow) { stockWrapper.ge(Loc::getRow, startRow); } if (null != endRow) { stockWrapper.le(Loc::getRow, endRow); } List<Loc> stockList = locService.list(stockWrapper); if (Cools.isEmpty(stockList) || stockList.size() < agvModel.getBackpack()) { return; @@ -279,8 +420,12 @@ // IDLE LambdaQueryWrapper<Loc> idleWrapper = new LambdaQueryWrapper<Loc>().eq(Loc::getLocSts, LocStsType.IDLE.val()); if (null != startRow) { idleWrapper.ge(Loc::getRow, startRow); } if (null != endRow) { idleWrapper.le(Loc::getRow, endRow); } if (null != startRow) { idleWrapper.ge(Loc::getRow, startRow); } if (null != endRow) { idleWrapper.le(Loc::getRow, endRow); } List<Loc> idleList = locService.list(idleWrapper); if (Cools.isEmpty(idleList)) { return; zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/LaneService.java
@@ -20,7 +20,6 @@ import org.springframework.context.event.EventListener; import org.springframework.stereotype.Service; import javax.annotation.PostConstruct; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; import java.util.*; @@ -149,6 +148,10 @@ if (this.adjacencyCodeMap.get(codeData).size() != 2) { List<String> neighbors = this.adjacencyCodeMap.get(codeData); for (String neighbor : neighbors) { if (this.adjacencyCodeMap.get(neighbor) == null) { log.info("cunzai"); continue; } if (this.adjacencyCodeMap.get(neighbor).size() == 2 && !visited.contains(neighbor)) { Lane lane = new Lane(String.valueOf(snowflakeIdWorker.nextId()).substring(3)); lane.getCodes().add(codeData); // 包含起点 zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/MainService.java
@@ -1,6 +1,7 @@ package com.zy.acs.manager.core.service; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.zy.acs.common.domain.AgvAction; import com.zy.acs.common.domain.AgvActionItem; @@ -26,6 +27,7 @@ import com.zy.acs.manager.core.domain.Lane; import com.zy.acs.manager.core.domain.TaskPosDto; import com.zy.acs.manager.core.service.astart.MapDataDispatcher; import com.zy.acs.manager.core.utils.HttpHandler; import com.zy.acs.manager.manager.controller.param.OpenBusSubmitParam; import com.zy.acs.manager.manager.entity.*; import com.zy.acs.manager.manager.enums.*; @@ -40,7 +42,9 @@ import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.interceptor.TransactionAspectSupport; import java.io.IOException; import java.util.*; import java.util.concurrent.TimeUnit; import java.util.stream.Collectors; /** @@ -182,8 +186,10 @@ } destSta = staService.getById(task.getDestSta()); if (locStaStatusCheck && !destSta.getStaSts().equals(StaStsType.IDLE.val())) { throw new BusinessException("destSta:" + task.getDestSta$() + " is not in IDLE status"); if (destSta.getStaTypeIsCheck() != 1) { if (locStaStatusCheck && !destSta.getStaSts().equals(StaStsType.IDLE.val())) { throw new BusinessException("destSta:" + task.getDestSta$() + " is not in IDLE status"); } } destSta.setStaSts(StaStsType.READY_RELEASE.val()); destSta.setUpdateTime(now); @@ -193,8 +199,10 @@ break; case STA_TO_LOC: oriSta = staService.getById(task.getOriSta()); if (locStaStatusCheck && !oriSta.getStaSts().equals(StaStsType.STOCK.val())) { throw new BusinessException("oriSta:" + task.getOriSta$() + " is not in STOCK status"); if (oriSta.getStaTypeIsCheck() != 1) { if (locStaStatusCheck && !oriSta.getStaSts().equals(StaStsType.STOCK.val())) { throw new BusinessException("oriSta:" + task.getOriSta$() + " is not in STOCK status"); } } oriSta.setStaSts(StaStsType.READY_TAKE.val()); oriSta.setUpdateTime(now); @@ -214,8 +222,10 @@ break; case STA_TO_STA: oriSta = staService.getById(task.getOriSta()); if (locStaStatusCheck && !oriSta.getStaSts().equals(StaStsType.STOCK.val())) { throw new BusinessException("oriSta:" + task.getOriSta$() + " is not in STOCK status"); if (oriSta.getStaTypeIsCheck() != 1) { if (locStaStatusCheck && !oriSta.getStaSts().equals(StaStsType.STOCK.val())) { throw new BusinessException("oriSta:" + task.getOriSta$() + " is not in STOCK status"); } } oriSta.setStaSts(StaStsType.READY_TAKE.val()); oriSta.setUpdateTime(now); @@ -224,8 +234,10 @@ } destSta = staService.getById(task.getDestSta()); if (locStaStatusCheck && !destSta.getStaSts().equals(StaStsType.IDLE.val())) { throw new BusinessException("destSta:" + task.getDestSta$() + " is not in IDLE status"); if (destSta.getStaTypeIsCheck() != 1) { if (locStaStatusCheck && !destSta.getStaSts().equals(StaStsType.IDLE.val())) { throw new BusinessException("destSta:" + task.getDestSta$() + " is not in IDLE status"); } } destSta.setStaSts(StaStsType.READY_RELEASE.val()); destSta.setUpdateTime(now); @@ -279,7 +291,7 @@ if (!taskService.updateById(task)) { throw new BusinessException("seqNum: " + task.getSeqNum() + " failed to update"); } report(task,null, TaskReportStsType.START); report(task, null, TaskReportStsType.START); } } catch (Exception e) { log.error("mainService.infuseAgvForTask", e); @@ -1017,7 +1029,9 @@ ActionTypeType.ReadyTakeFromConveyorSta.val(), // 动作类型 actionPrepareSts, // 动作进度 agvId, // AGV now // 工作时间 now, // 工作时间 oriSta.getStaTypeIsCheck() == 1 ? 1 : 0, oriSta.getStaNo() )); // 暂存点放货 assert backpackType != null; @@ -1060,7 +1074,7 @@ ActionTypeType.TurnCorner.val(), // 动作类型 actionPrepareSts, // 动作进度 agvId, // AGV now // 工作时间 now // 工作时间 )); lastDirection = destStaWorkDirection; } @@ -1079,7 +1093,9 @@ ActionTypeType.ReadyTakeFromAgvSite.val(), // 动作类型 actionPrepareSts, // 动作进度 agvId, // AGV now // 工作时间 now, // 工作时间 destSta.getStaTypeIsCheck() == 1 ? 2 : 0, destSta.getStaNo() )); // 计算货叉工作方向 staWorkDirection = mapService.calculateAgvWorkDirectionByStation(destStaWorkDirection, lastDirection); @@ -1264,7 +1280,7 @@ public void publishAction(String actionGroupId) { try { Date now = new Date(); boolean flag = true; // action List<Action> actionList = actionService.list(new LambdaQueryWrapper<Action>() .eq(Action::getGroupId, actionGroupId).eq(Action::getActionSts, ActionStsType.PREPARE.val()) @@ -1395,9 +1411,14 @@ default: break; } if (!Cools.isEmpty(action.getAskType()) && (action.getAskType() == 1 || action.getAskType() == 2)) { flag = askSta(action.getAskType(), action.getAskSta()); } } if (!flag) { log.error("任务组 [{}] 动作指令下发失败 ,向输送线询问报错!!!", actionGroupId); throw new CoolException("任务组 [{" + actionGroupId + "}] 动作指令下发失败 !!!"); } BaseResult<?> result = agvCmdService.executeAgvActionCmd(agvAction); if (result.success()) { log.info("任务组 [{}] 动作指令已下发 ===>> 指令数量:{}", actionGroupId, actionList.size()); @@ -1666,4 +1687,36 @@ log.info("Task [{}] 状态记录插入数据库 ==========>> ", task.getSeqNum()); } } private boolean askSta(Integer askType, String askSta) { log.info("来询问输送线了,{},{}", askType, askSta); String wmsUrl = configService.getVal("WMS_URL", String.class); String wmsPath = configService.getVal("WMS_STA", String.class); if (Cools.isEmpty(wmsPath) || Cools.isEmpty(wmsUrl)) { return true; } Integer time = configService.getVal("TIMEOUT", Integer.class, 5); //Integer times = configService.getVal("REPORT_TIMES", Integer.class, 2); Map<String, Object> data = new HashMap<>(); data.put("askType", askType); data.put("askSta", askSta); String response = null; try { response = new HttpHandler.Builder() .setUri(wmsUrl) .setPath(wmsPath) .setTimeout(time, TimeUnit.SECONDS) .setJson(JSON.toJSONString(data)) .build() .doPost(); log.info("返回参数:{}", response); JSONObject jsonObject = JSON.parseObject(response); if (jsonObject.getInteger("code").equals(200)) { return true; } } catch (IOException e) { log.info("报错了,{}", e); } return false; } } zy-acs-manager/src/main/java/com/zy/acs/manager/core/service/TrafficService.java
@@ -255,24 +255,24 @@ } else { // complete first segment then merge behind segment int serial = segment.getSerial(); boolean interrupt = false; while (!interrupt) { Segment nextStep = segmentService.getNextStepOfInit(travel.getId(), serial); serial ++; if (null == nextStep) { interrupt = true; } else { if (nextStep.getEndNode() == endNode) { segmentList.add(nextStep); } else { interrupt = true; } } } // int serial = segment.getSerial(); // boolean interrupt = false; // while (!interrupt) { // // Segment nextStep = segmentService.getNextStepOfInit(travel.getId(), serial); // serial ++; // if (null == nextStep) { // interrupt = true; // } else { // if (nextStep.getEndNode() == endNode) { // // segmentList.add(nextStep); // } else { // interrupt = true; // } // } // // } } mapService.lockPath(null, pathList, agv.getUuid()); zy-acs-manager/src/main/java/com/zy/acs/manager/manager/entity/Action.java
@@ -61,6 +61,16 @@ */ @ApiModelProperty(value= "优先级") private Integer priority; /** * 取还是放,1取,2放 */ @ApiModelProperty(value= "取还是放,1取,2放") private Integer askType; /** * 是否询问站点 */ @ApiModelProperty(value= "是否询问站点") private String askSta; /** * 名称 @@ -201,6 +211,24 @@ this.ioTime = ioTime; } public Action(String uuid, Long busId, Long taskId, String seqNum, Integer priority, String name, Double val, String code, String params, Long actionType, Long actionSts, Long agvId, Date ioTime,Integer askType,String askSta) { this.uuid = uuid; this.busId = busId; this.taskId = taskId; this.seqNum = seqNum; this.priority = priority; this.name = name; this.val = val; this.code = code; this.params = params; this.actionType = actionType; this.actionSts = actionSts; this.agvId = agvId; this.ioTime = ioTime; this.askType = askType; this.askSta = askSta; } public String getBusId$(){ BusService service = SpringUtils.getBean(BusService.class); Bus bus = service.getById(this.busId); zy-acs-manager/src/main/java/com/zy/acs/manager/manager/entity/Sta.java
@@ -56,7 +56,7 @@ * 站类型 */ @ApiModelProperty(value= "站类型") private Long staType; private Integer staType; /** * 条码 @@ -178,6 +178,15 @@ return null; } public Integer getStaTypeIsCheck(){ StaTypeService service = SpringUtils.getBean(StaTypeService.class); StaType staType = service.getById(this.staType); if (!Cools.isEmpty(staType)){ return staType.getCheckType(); } return 0; } public String getCode$(){ CodeService service = SpringUtils.getBean(CodeService.class); Code code = service.getById(this.code); zy-acs-manager/src/main/java/com/zy/acs/manager/manager/entity/StaType.java
@@ -18,73 +18,77 @@ /** * ID */ @ApiModelProperty(value= "ID") @ApiModelProperty(value = "ID") @TableId(value = "id", type = IdType.AUTO) private Long id; /** * 标识 */ @ApiModelProperty(value= "标识") @ApiModelProperty(value = "标识") private String uuid; /** * 名称 */ @ApiModelProperty(value= "名称") @ApiModelProperty(value = "名称") private String name; @ApiModelProperty(value = "是否检测信号") private Integer checkType; /** * 状态 1: 正常 0: 冻结 * 状态 1: 正常 0: 冻结 */ @ApiModelProperty(value= "状态 1: 正常 0: 冻结 ") @ApiModelProperty(value = "状态 1: 正常 0: 冻结 ") private Integer status; /** * 是否删除 1: 是 0: 否 * 是否删除 1: 是 0: 否 */ @ApiModelProperty(value= "是否删除 1: 是 0: 否 ") @ApiModelProperty(value = "是否删除 1: 是 0: 否 ") private Integer deleted; /** * 租户 */ @ApiModelProperty(value= "租户") @ApiModelProperty(value = "租户") private Long tenantId; /** * 添加人员 */ @ApiModelProperty(value= "添加人员") @ApiModelProperty(value = "添加人员") private Long createBy; /** * 添加时间 */ @ApiModelProperty(value= "添加时间") @ApiModelProperty(value = "添加时间") private Date createTime; /** * 修改人员 */ @ApiModelProperty(value= "修改人员") @ApiModelProperty(value = "修改人员") private Long updateBy; /** * 修改时间 */ @ApiModelProperty(value= "修改时间") @ApiModelProperty(value = "修改时间") private Date updateTime; /** * 备注 */ @ApiModelProperty(value= "备注") @ApiModelProperty(value = "备注") private String memo; public StaType() {} public StaType() { } public StaType(String uuid,String name,Integer status,Integer deleted,Long tenantId,Long createBy,Date createTime,Long updateBy,Date updateTime,String memo) { public StaType(String uuid, String name, Integer status, Integer deleted, Long tenantId, Long createBy, Date createTime, Long updateBy, Date updateTime, String memo) { this.uuid = uuid; this.name = name; this.status = status; @@ -110,9 +114,11 @@ // null // 备注 // ); public String getStatus$(){ if (null == this.status){ return null; } switch (this.status){ public String getStatus$() { if (null == this.status) { return null; } switch (this.status) { case 1: return "正常"; case 0: @@ -122,9 +128,11 @@ } } public Boolean getStatusBool(){ if (null == this.status){ return null; } switch (this.status){ public Boolean getStatusBool() { if (null == this.status) { return null; } switch (this.status) { case 1: return true; case 0: