| src/main/java/com/zy/asrs/controller/BasCrnpController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/zy/asrs/entity/param/BasCrnpParam.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/java/com/zy/core/model/protocol/CrnProtocol.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/main/webapp/views/deviceOperate/crnOperate.html | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/zy/asrs/controller/BasCrnpController.java
@@ -11,8 +11,16 @@ import com.core.common.DateUtils; import com.core.common.R; import com.zy.asrs.entity.BasCrnp; import com.zy.asrs.entity.param.BasCrnpParam; import com.zy.asrs.service.BasCrnpService; import com.zy.common.web.BaseController; import com.zy.core.CrnThread; import com.zy.core.cache.CrnErrCache; import com.zy.core.cache.SlaveConnection; import com.zy.core.enums.SlaveType; import com.zy.core.model.CrnSlave; import com.zy.core.model.protocol.CrnProtocol; import com.zy.core.properties.SlaveProperties; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -23,6 +31,9 @@ @Autowired private BasCrnpService basCrnpService; @Autowired private SlaveProperties slaveProperties; @RequestMapping(value = "/basCrnp/{id}/auth") @ManagerAuth @@ -84,6 +95,96 @@ return R.ok(); } @RequestMapping(value = "/basCrnp/update/demo/auth") @ManagerAuth(memo = "堆垛机修改Demo") public R updateDemo(BasCrnpParam basCrnpParam){ if (Cools.isEmpty(basCrnpParam) || null==basCrnpParam.getCrnNo()){ return R.error("请选择堆垛机再操作").add("请选择堆垛机再操作"); } BasCrnp basCrnp = basCrnpService.selectById(basCrnpParam.getCrnNo()); if (basCrnp == null) { return R.error("堆垛机尚未在数据库进行维护!").add("堆垛机尚未在数据库进行维护"); } if (basCrnpParam.getHpMk().equals("Y")){ // 获取堆垛机信息 CrnThread crnThread = (CrnThread) SlaveConnection.get(SlaveType.Crn, basCrnp.getCrnNo()); if (crnThread == null) { return R.error(); } CrnProtocol crnProtocol = crnThread.getCrnProtocol(); if (crnProtocol == null) { return R.error(); } if (Cools.isEmpty(basCrnpParam.getLocMastDemoCount()) || basCrnpParam.getLocMastDemoCount()<1){ return R.error("请输入测试库位数量").add("请输入测试库位数量"); } if (Cools.isEmpty(basCrnpParam.getLocMastDemo())){ return R.error("请输入测试库位列表").add("请输入测试库位列表"); } else { String[] split = basCrnpParam.getLocMastDemo().split(";"); if (split.length!=basCrnpParam.getLocMastDemoCount()){ return R.error("输入测试库位列表数量不匹配").add("输入测试库位列表数量不匹配"); } basCrnpParam.setLocMastDemo(String.join(";", split)); } if (Cools.isEmpty(basCrnpParam.getStaOutDemo())){ return R.error("请输入测试出库站").add("请输入测试出库站"); } else { CrnSlave crn = new CrnSlave(); for (CrnSlave crnSlave : slaveProperties.getCrn()) { if (crnSlave.getId().equals(crnProtocol.getCrnNo())){ crn = new CrnSlave(crnSlave); break; } } if (Cools.isEmpty(crnProtocol.getLaneNo()) || crnProtocol.getLaneNo()==0){ return R.error("堆垛机巷道号异常").add("堆垛机巷道号异常"); } if (!crn.getId().equals(crnProtocol.getLaneNo())) { for (CrnSlave crnOther : slaveProperties.getCrn()) { if (crnOther.getId().equals(crnProtocol.getLaneNo())) { crn.updateCrnInStn(crnOther); } } } boolean sign = false; for (CrnSlave.CrnStn crnStnInt : crn.getCrnInStn()){ if (crnStnInt.getStaNo().equals(basCrnpParam.getStaIntDemo())) { sign = true; break; } } if (!sign){ return R.error("入库站不在堆垛机巷道").add("入库站不在堆垛机巷道"); } sign = false; for (CrnSlave.CrnStn crnStnOut : crn.getCrnOutStn()){ if (crnStnOut.getStaNo().equals(basCrnpParam.getStaOutDemo())) { sign = true; break; } } if (!sign){ return R.error("出库站不在堆垛机巷道").add("出库站不在堆垛机巷道"); } } crnProtocol.setLocMastDemoCount(basCrnpParam.getLocMastDemoCount()); crnProtocol.setLocMastDemoList(basCrnpParam.getLocMastDemoList()); crnProtocol.setStaOutDemo(basCrnpParam.getStaOutDemo()); crnProtocol.setStaIntDemo(basCrnpParam.getStaIntDemo()); } basCrnp.setHpMk(basCrnpParam.getHpMk()); basCrnp.setModiUser(getUserId()); basCrnp.setModiTime(new Date()); basCrnpService.updateById(basCrnp); return R.ok(); } @RequestMapping(value = "/basCrnp/delete/auth") @ManagerAuth(memo = "堆垛机删除") public R delete(@RequestParam String param){ src/main/java/com/zy/asrs/entity/param/BasCrnpParam.java
New file @@ -0,0 +1,102 @@ package com.zy.asrs.entity.param; import lombok.Data; import java.io.Serializable; import java.util.ArrayList; import java.util.Date; @Data public class BasCrnpParam implements Serializable { /** * 编号 */ private Integer crnNo; /** * 可入 */ private String inEnable; /** * 可出 */ private String outEnable; /** * 状态 */ private Integer crnSts; /** * 工作号 */ private Integer wrkNo; /** * 异常码 */ private Long crnErr; /** * 源库位 */ private String frmLocno; /** * 源站 */ private Integer frmSta; /** * 目标站 */ private Integer toSta; /** * 目标库位 */ private String toLocno; /** * 创建者 */ private Long appeUser; /** * 创建时间 */ private Date appeTime; /** * 修改人员 */ private Long modiUser; /** * 修改时间 */ private Date modiTime; private String hpMk; private String retrieveMk; private String ctlHp; private String ctlRest; private String empIn; private Integer tankQty; private Integer tankQty1; private Integer locMastDemoCount;//测试库位数量 private String locMastDemo;//测试库位数量 private ArrayList<String> locMastDemoList;//测试库位列表 private Integer staOutDemo;//测试库位出库站 private Integer staIntDemo;//测试库位入库站 } src/main/java/com/zy/core/model/protocol/CrnProtocol.java
@@ -202,7 +202,7 @@ public String errCrn; public String locMastDemoCount;//测试库位数量 public Integer locMastDemoCount;//测试库位数量 public ArrayList<String> locMastDemoList;//测试库位列表 public Integer staOutDemo;//测试库位出库站 public Integer staIntDemo;//测试库位入库站 src/main/webapp/views/deviceOperate/crnOperate.html
@@ -70,6 +70,20 @@ <el-input v-model="formParam.lev" placeholder="层"></el-input> </el-form-item> </el-form> <el-form :model="formParam" label-position="top" :inline="true" class="demo-form-inline"> <el-form-item label="测试库位数量"> <el-input v-model="formParam.locMastDemoCount" placeholder="测试库位数量"></el-input> </el-form-item> <el-form-item label="测试库位"> <el-input v-model="formParam.locMastDemo" placeholder="测试库位 分隔符;"></el-input> </el-form-item> <el-form-item label="目标站/目标库位"> <el-input v-model="formParam.staOutDemo" placeholder="堆垛机放货站点"></el-input> </el-form-item> <el-form-item label="目标站/目标库位"> <el-input v-model="formParam.staIntDemo" placeholder="堆垛机取货站点"></el-input> </el-form-item> </el-form> <el-form label-position="top" :inline="true" class="demo-form-inline"> <el-form-item label=""> <el-checkbox @change="updateEnableInOut('in')" v-model="enableIn">可入</el-checkbox> @@ -78,7 +92,7 @@ <el-checkbox @change="updateEnableInOut('out')" v-model="enableOut">可出</el-checkbox> </el-form-item> <el-form-item label=""> <el-checkbox @change="updateEnableInOut('demo')" v-model="hpMkDemo">演示</el-checkbox> <el-checkbox @change="updateDemo('demo')" v-model="hpMkDemo">演示</el-checkbox> </el-form-item> </el-form> <div> @@ -201,6 +215,10 @@ sourceBay: 0, sourceLev: 1, staNo: null, locMastDemoCount: 3, locMastDemo: null, staOutDemo: null, staIntDemo: null, row: 1, bay: 0, lev: 1 @@ -288,11 +306,6 @@ inEnable: this.enableIn ? "Y" : "N", crnNo: this.formParam.crnNo } } else if (type == "demo") { param = { hpMk: this.hpMkDemo ? "Y" : "N", crnNo: this.formParam.crnNo } } else { param = { outEnable: this.enableOut ? "Y" : "N", @@ -321,6 +334,53 @@ } } }); }, updateDemo(type) { let that = this let param = {} that.$confirm('将启动演示模式,是否继续','提示',{ confirmButtonText: '确定', cancelButtonText: '取消', type: 'warning' }).then(()=>{ if (type == "demo") { param = { hpMk: this.hpMkDemo ? "Y" : "N", staOutDemo: this.formParam.staOutDemo, staIntDemo: this.formParam.staIntDemo, locMastDemo: this.formParam.locMastDemo, locMastDemoCount: this.formParam.locMastDemoCount, crnNo: this.formParam.crnNo } } else { param = { crnNo: this.formParam.crnNo } } $.ajax({ url: baseUrl + "/basCrnp/update/demo/auth", headers: { 'token': localStorage.getItem('token') }, data: param, method: 'POST', success: function (res) { if (res.code == 200) { that.$message({ message: res.msg, type: 'success' }); } else { that.$message({ message: res.msg, type: 'error' }); } } }); }) } } })