From 77ac6b72ed82d51d0d45bf156ac1b5bb3cb15782 Mon Sep 17 00:00:00 2001 From: Junjie <xjj@123> Date: 星期二, 19 三月 2024 14:01:43 +0800 Subject: [PATCH] # --- zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/thread/DevpThread.java | 9 zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/asrs/service/FlowGraphService.java | 8 zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/thread/CrnThread.java | 7 zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/asrs/controller/FlowGraphController.java | 113 +++++++++++ zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/asrs/entity/FlowGraph.java | 137 +++++++++++++ zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/thread/FlowExecute.java | 72 +++++++ zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/thread/impl/SiemensDevpThread.java | 21 ++ zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/thread/impl/SiemensCrnThread.java | 12 + zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/asrs/controller/FlowController.java | 55 ++++- zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/model/protocol/StaProtocol.java | 83 ++++++++ zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/asrs/service/impl/FlowGraphServiceImpl.java | 12 + zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/asrs/mapper/FlowGraphMapper.java | 12 + zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/model/enums/SlaveType.java | 23 ++ zy-asrs-wcs/src/main/resources/mapper/asrs/FlowGraphMapper.xml | 5 14 files changed, 557 insertions(+), 12 deletions(-) diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/asrs/controller/FlowController.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/asrs/controller/FlowController.java index 441ea98..8b75166 100644 --- a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/asrs/controller/FlowController.java +++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/asrs/controller/FlowController.java @@ -1,24 +1,28 @@ package com.zy.asrs.wcs.asrs.controller; import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; import com.zy.asrs.framework.common.R; +import com.zy.asrs.wcs.asrs.entity.FlowGraph; import com.zy.asrs.wcs.asrs.entity.param.FlowLogicCodeParam; +import com.zy.asrs.wcs.asrs.service.FlowGraphService; +import com.zy.asrs.wcs.core.thread.FlowExecute; +import com.zy.asrs.wcs.system.controller.BaseController; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.LinkedHashMap; -import java.util.List; +import java.util.*; @RestController -@RequestMapping("/flow") -public class FlowController { +@RequestMapping("/api") +public class FlowController extends BaseController { - @PostMapping("/analysisExportData") + @Autowired + private FlowGraphService flowGraphService; + @Autowired + private FlowExecute flowExecute; + + @PostMapping("/flow/analysisExportData") public R analysisExportData(@RequestBody HashMap<String, Object> param) { - System.out.println(param); List<LinkedHashMap<String, Object>> data = (List<LinkedHashMap<String, Object>>) param.get("data"); ArrayList<FlowLogicCodeParam> list = new ArrayList<>(); @@ -32,7 +36,7 @@ Boolean isLogic = Boolean.parseBoolean(mapData.get("isLogic").toString()); String searchLogicId = mapData.get("searchLogicId").toString(); Boolean searchLogicBool = Boolean.parseBoolean(mapData.get("searchLogicBool").toString()); - String codeContent = mapData.get("codeContent").toString(); + String codeContent = mapData.get("codeContent") == null ? "" : mapData.get("codeContent").toString(); if (isLogic) { FlowLogicCodeParam flowLogicCodeParam = new FlowLogicCodeParam(); flowLogicCodeParam.setId(id); @@ -60,9 +64,36 @@ } - System.out.println(list); + FlowGraph flowGraph = new FlowGraph(); + if (param.get("id") != null) { + flowGraph.setId(Integer.parseInt(param.get("id").toString())); + }else { + flowGraph.setCreateTime(new Date()); + flowGraph.setStatus(0); + } + flowGraph.setName(param.get("name").toString()); + flowGraph.setMemo(param.get("memo").toString()); + flowGraph.setOriginData(param.get("originData").toString()); + flowGraph.setProcessData(JSON.toJSONString(list)); + flowGraph.setUpdateTime(new Date()); + flowGraph.setHostId(getHostId()); + flowGraphService.saveOrUpdate(flowGraph); return R.ok(); } + @PostMapping("/flow/mockRun") + public R mockRun(@RequestBody HashMap<String, Object> param) { + FlowGraph flowGraph = flowGraphService.getById(param.get("id").toString()); + if (flowGraph == null) { + return R.error("娴佺▼鍥句笉瀛樺湪"); + } + + //寮�濮嬫ā鎷熸墽琛� + String processData = flowGraph.getProcessData(); + List<FlowLogicCodeParam> list = JSON.parseArray(processData, FlowLogicCodeParam.class); + boolean execute = flowExecute.execute(list); + return R.ok().add(execute); + } + } diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/asrs/controller/FlowGraphController.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/asrs/controller/FlowGraphController.java new file mode 100644 index 0000000..85f264c --- /dev/null +++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/asrs/controller/FlowGraphController.java @@ -0,0 +1,113 @@ +package com.zy.asrs.wcs.asrs.controller; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.zy.asrs.framework.common.Cools; +import com.zy.asrs.framework.common.R; +import com.zy.asrs.wcs.common.annotation.OperationLog; +import com.zy.asrs.wcs.common.domain.BaseParam; +import com.zy.asrs.wcs.common.domain.KeyValVo; +import com.zy.asrs.wcs.common.domain.PageParam; +import com.zy.asrs.wcs.asrs.entity.FlowGraph; +import com.zy.asrs.wcs.asrs.service.FlowGraphService; +import com.zy.asrs.wcs.system.controller.BaseController; +import com.zy.asrs.wcs.utils.ExcelUtil; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.util.*; + +@RestController +@RequestMapping("/api") +public class FlowGraphController extends BaseController { + + @Autowired + private FlowGraphService flowGraphService; + + @PreAuthorize("hasAuthority('asrs:flowGraph:list')") + @PostMapping("/flowGraph/page") + public R page(@RequestBody Map<String, Object> map) { + BaseParam baseParam = buildParam(map, BaseParam.class); + PageParam<FlowGraph, BaseParam> pageParam = new PageParam<>(baseParam, FlowGraph.class); + return R.ok().add(flowGraphService.page(pageParam, pageParam.buildWrapper(true))); + } + + @PreAuthorize("hasAuthority('asrs:flowGraph:list')") + @PostMapping("/flowGraph/list") + public R list(@RequestBody(required = false) Map<String, Object> map) { + return R.ok().add(flowGraphService.list()); + } + + @PreAuthorize("hasAuthority('asrs:flowGraph:list')") + @GetMapping("/flowGraph/{id}") + public R get(@PathVariable("id") Long id) { + return R.ok().add(flowGraphService.getById(id)); + } + + @PreAuthorize("hasAuthority('asrs:flowGraph:save')") + @OperationLog("娣诲姞娴佺▼鍥�") + @PostMapping("/flowGraph/save") + public R save(@RequestBody FlowGraph flowGraph) { + if (!flowGraphService.save(flowGraph)) { + return R.error("娣诲姞澶辫触"); + } + return R.ok("娣诲姞鎴愬姛"); + } + + @PreAuthorize("hasAuthority('asrs:flowGraph:update')") + @OperationLog("淇敼娴佺▼鍥�") + @PostMapping("/flowGraph/update") + public R update(@RequestBody FlowGraph flowGraph) { + if (!flowGraphService.updateById(flowGraph)) { + return R.error("淇敼澶辫触"); + } + return R.ok("淇敼鎴愬姛"); + } + + @PreAuthorize("hasAuthority('asrs:flowGraph:update')") + @OperationLog("淇敼娴佺▼鍥剧姸鎬�") + @PostMapping("/flowGraph/updateFlowStatus") + public R updateFlowStatus(@RequestBody Map<String,Object> param) { + FlowGraph flowGraph = flowGraphService.getById(param.get("id").toString()); + if (flowGraph == null) { + return R.error("娴佺▼鍥句笉瀛樺湪"); + } + flowGraph.setStatus(Integer.parseInt(param.get("status").toString())); + flowGraph.setUpdateTime(new Date()); + flowGraphService.saveOrUpdate(flowGraph); + return R.ok("淇敼鎴愬姛"); + } + + @PreAuthorize("hasAuthority('asrs:flowGraph:remove')") + @OperationLog("鍒犻櫎娴佺▼鍥�") + @PostMapping("/flowGraph/remove/{ids}") + public R remove(@PathVariable Long[] ids) { + if (!flowGraphService.removeByIds(Arrays.asList(ids))) { + return R.error("鍒犻櫎澶辫触"); + } + return R.ok("鍒犻櫎鎴愬姛"); + } + + @PreAuthorize("hasAuthority('asrs:flowGraph:list')") + @PostMapping("/flowGraph/query") + public R query(@RequestParam(required = false) String condition) { + List<KeyValVo> vos = new ArrayList<>(); + LambdaQueryWrapper<FlowGraph> wrapper = new LambdaQueryWrapper<>(); + if (!Cools.isEmpty(condition)) { + wrapper.like(FlowGraph::getId, condition); + } + flowGraphService.page(new Page<>(1, 30), wrapper).getRecords().forEach( + item -> vos.add(new KeyValVo(item.getId(), item.getId())) + ); + return R.ok().add(vos); + } + + @PreAuthorize("hasAuthority('asrs:flowGraph:list')") + @PostMapping("/flowGraph/export") + public void export(@RequestBody Map<String, Object> map, HttpServletResponse response) throws Exception { + ExcelUtil.build(ExcelUtil.create(flowGraphService.list(), FlowGraph.class), response); + } + +} diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/asrs/entity/FlowGraph.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/asrs/entity/FlowGraph.java new file mode 100644 index 0000000..9acf37e --- /dev/null +++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/asrs/entity/FlowGraph.java @@ -0,0 +1,137 @@ +package com.zy.asrs.wcs.asrs.entity; + +import java.text.SimpleDateFormat; +import java.util.Date; + +import com.zy.asrs.wcs.system.entity.Host; +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.wcs.system.service.UserService; +import com.zy.asrs.wcs.system.service.HostService; + +import java.io.Serializable; +import java.util.Date; + +@Data +@TableName("wcs_flow_graph") +public class FlowGraph implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value= "") + @TableId(value = "id", type = IdType.AUTO) + private Integer id; + + /** + * 鍘熷鏁版嵁 + */ + @ApiModelProperty(value= "鍘熷鏁版嵁") + private String originData; + + /** + * 澶勭悊鍚庣殑鏁版嵁 + */ + @ApiModelProperty(value= "澶勭悊鍚庣殑鏁版嵁") + private String processData; + + @ApiModelProperty(value= "") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date createTime; + + @ApiModelProperty(value= "") + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + private Date updateTime; + + /** + * 鏄惁鍚敤 0: 鍚� 1: 鏄� + */ + @ApiModelProperty(value= "鏄惁鍚敤 0: 鍚� 1: 鏄� ") + private Integer status; + + /** + * 鎵�灞炴満鏋� + */ + @ApiModelProperty(value= "鎵�灞炴満鏋�") + private Long hostId; + + /** + * 娴佺▼鍥惧悕绉� + */ + @ApiModelProperty(value= "娴佺▼鍥惧悕绉�") + private String name; + + /** + * 澶囨敞 + */ + @ApiModelProperty(value= "澶囨敞") + private String memo; + + public FlowGraph() {} + + public FlowGraph(String originData, String processData, Date createTime, Date updateTime, Integer status, Long hostId, String name, String memo) { + this.originData = originData; + this.processData = processData; + this.createTime = createTime; + this.updateTime = updateTime; + this.status = status; + this.hostId = hostId; + this.name = name; + this.memo = memo; + } + + // FlowGraph flowGraph = new FlowGraph( +// null, // 鍘熷鏁版嵁 +// null, // 澶勭悊鍚庣殑鏁版嵁 +// null, // +// null, // +// null // 鏄惁鍚敤 +// ); + + public String getCreateTime$(){ + if (Cools.isEmpty(this.createTime)){ + return ""; + } + return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.createTime); + } + + public String getUpdateTime$(){ + if (Cools.isEmpty(this.updateTime)){ + return ""; + } + return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.updateTime); + } + + public String getStatus$(){ + if (null == this.status){ return null; } + switch (this.status){ + case 0: + return "鍚�"; + case 1: + return "鏄�"; + default: + return String.valueOf(this.status); + } + } + + 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; + } + + +} diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/asrs/mapper/FlowGraphMapper.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/asrs/mapper/FlowGraphMapper.java new file mode 100644 index 0000000..981c203 --- /dev/null +++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/asrs/mapper/FlowGraphMapper.java @@ -0,0 +1,12 @@ +package com.zy.asrs.wcs.asrs.mapper; + +import com.zy.asrs.wcs.asrs.entity.FlowGraph; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; +import org.springframework.stereotype.Repository; + +@Mapper +@Repository +public interface FlowGraphMapper extends BaseMapper<FlowGraph> { + +} diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/asrs/service/FlowGraphService.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/asrs/service/FlowGraphService.java new file mode 100644 index 0000000..e9f4dc7 --- /dev/null +++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/asrs/service/FlowGraphService.java @@ -0,0 +1,8 @@ +package com.zy.asrs.wcs.asrs.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.zy.asrs.wcs.asrs.entity.FlowGraph; + +public interface FlowGraphService extends IService<FlowGraph> { + +} diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/asrs/service/impl/FlowGraphServiceImpl.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/asrs/service/impl/FlowGraphServiceImpl.java new file mode 100644 index 0000000..45a9a2f --- /dev/null +++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/asrs/service/impl/FlowGraphServiceImpl.java @@ -0,0 +1,12 @@ +package com.zy.asrs.wcs.asrs.service.impl; + +import com.zy.asrs.wcs.asrs.mapper.FlowGraphMapper; +import com.zy.asrs.wcs.asrs.entity.FlowGraph; +import com.zy.asrs.wcs.asrs.service.FlowGraphService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +@Service("flowGraphService") +public class FlowGraphServiceImpl extends ServiceImpl<FlowGraphMapper, FlowGraph> implements FlowGraphService { + +} diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/model/enums/SlaveType.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/model/enums/SlaveType.java new file mode 100644 index 0000000..1118943 --- /dev/null +++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/model/enums/SlaveType.java @@ -0,0 +1,23 @@ +package com.zy.asrs.wcs.core.model.enums; + +public enum SlaveType { + + Crn, + Devp, + Barcode, + Led, + Scale, + Ste, + Shuttle, + Lift, + ; + + public static SlaveType findInstance(String s){ + for (SlaveType type : SlaveType.values()) { + if (type.toString().equals(s)) { + return type; + } + } + return null; + } +} diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/model/protocol/StaProtocol.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/model/protocol/StaProtocol.java new file mode 100644 index 0000000..bc3d5d3 --- /dev/null +++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/model/protocol/StaProtocol.java @@ -0,0 +1,83 @@ +package com.zy.asrs.wcs.core.model.protocol; + +import lombok.Data; + +/** + * 杈撻�佺嚎plc鍗曚釜绔欑偣璇︾粏淇℃伅 + */ +@Data +public class StaProtocol implements Cloneable { + + // 绔欑偣缂栧彿 + private Integer siteId; + + // ---------------------------------------------------------------- + // 宸ヤ綔鍙� + private Short workNo = 0; + + // ---------------------------------------------------------------- + // 鐩爣绔� + private Short staNo; + + // ---------------------------------------------------------------- + // 鑷姩 + private boolean autoing; + + // 鏈夌墿 + private boolean loading; + + // 鍙叆 + private boolean inEnable; + + // 鍙嚭 + private boolean outEnable; + + // 绌烘澘淇″彿 + private boolean emptyMk; + + // 婊℃墭鐩� + private boolean fullPlt; + + // 楂� + private boolean high; + + // 浣� + private boolean low; + + // 閿佸畾鏍囪 + private boolean pakMk = true; + + // 澶栧舰妫�娴� ------------------------------------------------------------------------ + + // 鍓嶈秴闄� + private boolean frontErr; + + // 鍚庤秴闄� + private boolean backErr; + + // 楂樿秴闄� + private boolean highErr; + + // 宸﹁秴闄� + private boolean leftErr; + + // 鍙宠秴闄� + private boolean rightErr; + + // 瓒呴噸 + private boolean weightErr; + + // 鎵爜澶辫触 + private boolean barcodeErr; + + @Override + public StaProtocol clone() { + try { + return (StaProtocol) super.clone(); + } catch (CloneNotSupportedException e) { + e.printStackTrace(); + } + return null; + } + +} diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/thread/CrnThread.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/thread/CrnThread.java new file mode 100644 index 0000000..1431322 --- /dev/null +++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/thread/CrnThread.java @@ -0,0 +1,7 @@ +package com.zy.asrs.wcs.core.thread; + +public interface CrnThread { + + boolean loadAndUnload();//鍙栨斁璐� + +} diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/thread/DevpThread.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/thread/DevpThread.java new file mode 100644 index 0000000..b826dc2 --- /dev/null +++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/thread/DevpThread.java @@ -0,0 +1,9 @@ +package com.zy.asrs.wcs.core.thread; + +public interface DevpThread { + + boolean writeWorkNo(short workNo);//鍐欏叆宸ヤ綔鍙� + + boolean writeStaNo(short staNo);//鍐欏叆鐩爣绔� + +} diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/thread/FlowExecute.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/thread/FlowExecute.java new file mode 100644 index 0000000..082a163 --- /dev/null +++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/thread/FlowExecute.java @@ -0,0 +1,72 @@ +package com.zy.asrs.wcs.core.thread; + +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.zy.asrs.wcs.asrs.entity.param.FlowLogicCodeParam; +import org.springframework.stereotype.Component; + +import java.util.List; +import java.util.Map; + +@Component +public class FlowExecute { + + //鎵ц娴佺▼鍥� + public boolean execute(List<FlowLogicCodeParam> list) { + for (FlowLogicCodeParam param : list) { + if (param.getId().equals("1")) { + return executeFlow(param.getLogicTrue()); + } + } + System.out.println(list); + return false; + } + + private boolean executeFlow(List<Map<String, Object>> list) { + for (Map<String, Object> map : list) { + JSONObject data = (JSONObject) map.get("data"); + if (data.getString("type").equals("devp")) { + JSONObject devp = data.getJSONObject("devpType"); + String devpNo = devp.getString("devpNo");//杈撻�佺嚎PLC + String staNo = devp.getString("staNo");//绔欏彿 + Boolean enableStaStatus = devp.getBoolean("enableStaStatus");//鍒ゆ柇绔欑偣鐘舵�� + JSONArray staStatus = devp.getJSONArray("staStatus");//绔欑偣鐘舵�佸垪琛� + String staJudgementFailExecute = devp.getString("staJudgementFailExecute");//鍒ゆ柇澶辫触鍚庢槸鍚︾户缁墽琛屾祦绋� + Boolean writeWorkNoStatus = devp.getBoolean("writeWorkNoStatus");//鏄惁鍐欏叆宸ヤ綔鍙� + Boolean writeStaNoStatus = devp.getBoolean("writeStaNoStatus");//鏄惁鍐欏叆鐩爣绔� + String writeWorkNo = devp.getString("writeWorkNo");//鍐欏叆宸ヤ綔鍙锋暟鎹� + String writeStaNo = devp.getString("writeStaNo");//鍐欏叆鐩爣绔欐暟鎹� + if (enableStaStatus) { + //鍒ゆ柇绔欑偣鐘舵�� + boolean statusFlag = true;//榛樿鍒ゆ柇閫氳繃 + for (Object status : staStatus) { + System.out.println(status); + } + + if (!statusFlag) { + //鍒ゆ柇涓嶉�氳繃 + if (staJudgementFailExecute.equals("stop")) { + //鍒ゆ柇澶辫触鍚庝笉缁х画鎵ц + return false; + } + } + + } + + if (writeWorkNoStatus) { + //鍐欏叆宸ヤ綔鍙� + } + + if (writeStaNoStatus) { + //鍐欏叆鐩爣绔� + } + System.out.println(devp); + } + System.out.println(data); + } + + System.out.println(list); + return false; + } + +} diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/thread/impl/SiemensCrnThread.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/thread/impl/SiemensCrnThread.java new file mode 100644 index 0000000..2c6db5c --- /dev/null +++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/thread/impl/SiemensCrnThread.java @@ -0,0 +1,12 @@ +package com.zy.asrs.wcs.core.thread.impl; + +import com.zy.asrs.wcs.core.thread.CrnThread; + +public class SiemensCrnThread implements CrnThread { + + @Override + public boolean loadAndUnload() { + System.out.println("loadAndUnload 琚墽琛�"); + return false; + } +} diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/thread/impl/SiemensDevpThread.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/thread/impl/SiemensDevpThread.java new file mode 100644 index 0000000..01928d1 --- /dev/null +++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/thread/impl/SiemensDevpThread.java @@ -0,0 +1,21 @@ +package com.zy.asrs.wcs.core.thread.impl; + +import com.zy.asrs.wcs.core.model.protocol.StaProtocol; +import com.zy.asrs.wcs.core.thread.DevpThread; +import java.util.Map; +import java.util.concurrent.ConcurrentHashMap; + +public class SiemensDevpThread implements DevpThread { + + private Map<Integer, StaProtocol> station = new ConcurrentHashMap<>(); + + @Override + public boolean writeWorkNo(short workNo) { + return false; + } + + @Override + public boolean writeStaNo(short staNo) { + return false; + } +} diff --git a/zy-asrs-wcs/src/main/resources/mapper/asrs/FlowGraphMapper.xml b/zy-asrs-wcs/src/main/resources/mapper/asrs/FlowGraphMapper.xml new file mode 100644 index 0000000..248a5ff --- /dev/null +++ b/zy-asrs-wcs/src/main/resources/mapper/asrs/FlowGraphMapper.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> +<mapper namespace="com.zy.asrs.wcs.asrs.mapper.FlowGraphMapper"> + +</mapper> -- Gitblit v1.9.1