| | |
| | | } |
| | | // List<Map<String, Object>> res = new ArrayList<>(); |
| | | for (RgvSlave rgvSlave : slaveProperties.getRgv()) { |
| | | if (rgvSlave.getId() == rgvNo){ |
| | | if (rgvSlave.getId().equals(rgvNo)){ |
| | | rgvSlave.setDemo(true); |
| | | } |
| | | } |
| | |
| | | } |
| | | // List<Map<String, Object>> res = new ArrayList<>(); |
| | | for (RgvSlave rgvSlave : slaveProperties.getRgv()) { |
| | | if (rgvSlave.getId() == rgvNo){ |
| | | if (rgvSlave.getId().equals(rgvNo)){ |
| | | rgvSlave.setDemo(false); |
| | | } |
| | | } |
| | | return R.ok(); |
| | | } |
| | | |
| | | @GetMapping("/demo/status/rgvStatus") |
| | | public R demoStatusTrue1(Integer rgvNo,Integer status){ |
| | | if (Cools.isEmpty(rgvNo)){ |
| | | return R.error("请选择rgv"); |
| | | } |
| | | if (Cools.isEmpty(status)){ |
| | | return R.error("选择按钮有误"); |
| | | } |
| | | // List<Map<String, Object>> res = new ArrayList<>(); |
| | | for (RgvSlave rgvSlave : slaveProperties.getRgv()) { |
| | | // 获取RGV信息 |
| | | SiemensRgvThread rgvThread = (SiemensRgvThread) SlaveConnection.get(SlaveType.Rgv, rgvNo); |
| | | if (rgvThread == null) { |
| | | throw new CoolException("RGV不在线"); |
| | | } |
| | | RgvProtocol rgvProtocol = rgvThread.getRgvProtocol(); |
| | | if (rgvProtocol == null) { |
| | | throw new CoolException("RGV不在线"); |
| | | } |
| | | String DB = ""; |
| | | if (rgvSlave.getId().equals(rgvNo)){ |
| | | switch (status){ |
| | | case 5://强制启动 |
| | | DB="4.4"; |
| | | break; |
| | | // case 6://复位信号 |
| | | // DB="4.5"; |
| | | // break; |
| | | case 7://报警消音 |
| | | DB="4.6"; |
| | | break; |
| | | case 8://启动 |
| | | DB="4.7"; |
| | | break; |
| | | case 9://停止 |
| | | DB="5.0"; |
| | | break; |
| | | case 10://急停 |
| | | DB="5.1"; |
| | | break; |
| | | case 11://复位按钮 |
| | | DB="5.2"; |
| | | break; |
| | | case 12://手动 |
| | | DB="5.3"; |
| | | break; |
| | | case 13://手动定位 |
| | | DB="5.4"; |
| | | break; |
| | | case 14://单机 |
| | | DB="5.5"; |
| | | break; |
| | | case 15://联机 |
| | | DB="5.6"; |
| | | break; |
| | | case 16://货叉定位回中 |
| | | DB="5.7"; |
| | | break; |
| | | default: |
| | | return R.error("按钮不存在????!!!"); |
| | | } |
| | | if (MessageQueue.offer(SlaveType.Rgv, rgvNo, new Task(10, DB))) { |
| | | return R.ok(); |
| | | } else { |
| | | return R.error("命令下发失败"); |
| | | } |
| | | } |
| | | |
| | | } |
| | | return R.ok(); |
| | | } |
| | | |
| | | |
| | | |
| | | @PostMapping("/demo/switch") |
| | |
| | | for (RgvSlave rgv : slaveProperties.getRgv()) { |
| | | if (!rgv.getDemo()){ |
| | | continue; |
| | | |
| | | } |
| | | SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId()); |
| | | StaProtocol staProtocol = devpThread.getStation().get(inSta.getStaNo()); |
| | |
| | | @ManagerAuth(value = ManagerAuth.Auth.NONE, memo = "登录") |
| | | public R loginAction(String mobile, String password){ |
| | | //验证许可证是否有效 |
| | | LicenseVerify licenseVerify = new LicenseVerify(); |
| | | boolean verify = licenseVerify.verify(); |
| | | if (!verify) {//许可证已失效 |
| | | return R.parse(CodeRes.SYSTEM_20001); |
| | | } |
| | | // LicenseVerify licenseVerify = new LicenseVerify(); |
| | | // boolean verify = licenseVerify.verify(); |
| | | // if (!verify) {//许可证已失效 |
| | | // return R.parse(CodeRes.SYSTEM_20001); |
| | | // } |
| | | if (mobile.equals("super") && password.equals(Cools.md5(superPwd))) { |
| | | Map<String, Object> res = new HashMap<>(); |
| | | res.put("username", mobile); |
| | |
| | | import HslCommunication.Profinet.Siemens.SiemensPLCS; |
| | | import HslCommunication.Profinet.Siemens.SiemensS7Net; |
| | | import com.alibaba.fastjson.JSON; |
| | | import com.core.common.Cools; |
| | | import com.core.common.DateUtils; |
| | | import com.core.common.SpringUtils; |
| | | import com.zy.asrs.entity.BasRgv; |
| | |
| | | // commandAvoidanceXY.setDestinationStaNo2((short)0); // 目标站 |
| | | commandAvoidanceXY.setCommand((short)0); |
| | | write(commandAvoidanceXY); |
| | | break; |
| | | case 10: |
| | | write10((String) task.getData()); |
| | | break; |
| | | default: |
| | | break; |
| | |
| | | } |
| | | } |
| | | |
| | | //小车强制、复位、报警消音、启动、停止、急停、复位、手动、手动定位、单机、联机、货叉回中 |
| | | private boolean write10(String status) throws InterruptedException { |
| | | if (Cools.isEmpty(status)) { |
| | | log.error("RGV写入命令为空"); |
| | | return false; |
| | | } |
| | | OperateResult result = siemensNet.Write("DB19."+status, true); |
| | | if (result != null && result.IsSuccess) { |
| | | Thread.sleep(200); |
| | | this.readStatus(); |
| | | log.info("RGV 命令下发[id:{}] >>>>> {}", slave.getId(), JSON.toJSON("DB19."+status)); |
| | | OutputQueue.RGV.offer(MessageFormat.format("【{0}】[id:{1}] >>>>> 命令下发: {2}", DateUtils.convert(new Date()), slave.getId(), "DB19."+status)); |
| | | return true; |
| | | } else { |
| | | OutputQueue.RGV.offer(MessageFormat.format("【{0}】写入RGV plc数据失败 ===>> [id:{1}] [ip:{2}] [port:{3}] [DB块:{4}]", DateUtils.convert(new Date()), slave.getId(), slave.getIp(), slave.getPort(), "DB19."+status)); |
| | | log.error("写入RGV plc数据失败 ===>> [id:{}] [ip:{}] [port:{}] [DB块:{4}]", slave.getId(), slave.getIp(), slave.getPort(), "DB19."+status); |
| | | return false; |
| | | } |
| | | } |
| | | |
| | | @Override |
| | | public void close() { |
| | | siemensNet.ConnectClose(); |
| | |
| | | */ |
| | | @RequestMapping(value = "/getLicenseDays") |
| | | public R getLicenseDays() { |
| | | if (true){ |
| | | return R.ok().add(0); |
| | | } |
| | | LicenseVerify licenseVerify = new LicenseVerify(); |
| | | LicenseContent verifyInfo = licenseVerify.getVerifyInfo(); |
| | | if (verifyInfo == null) { |
| | |
| | | |
| | | LicenseVerify licenseVerify = new LicenseVerify(); |
| | | //安装证书 |
| | | LicenseContent install = licenseVerify.install(param); |
| | | // LicenseContent install = licenseVerify.install(param); |
| | | |
| | | logger.info("++++++++ 许可证加载结束 ++++++++"); |
| | | |
| | | return install != null; |
| | | // return install != null; |
| | | return true; |
| | | } catch (Exception e) { |
| | | return false; |
| | | } |
| | |
| | | name: @pom.build.finalName@ |
| | | datasource: |
| | | driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver |
| | | url: jdbc:sqlserver://127.0.0.1:1433;databasename=ghtzasrs |
| | | url: jdbc:sqlserver://192.168.4.15:1433;databasename=ssdasrs |
| | | username: sa |
| | | password: sa@123 |
| | | mvc: |
| | |
| | | |
| | | #License相关配置 |
| | | license: |
| | | subject: ghtzwcs |
| | | subject: ssdwcs |
| | | publicAlias: publicCert |
| | | storePass: public_zhongyang_123456789 |
| | | licensePath: license.lic |
| | |
| | | </el-form> |
| | | |
| | | <div> |
| | | <el-button v-if="demo === 'N' " @click="demos('true')" type="warning">演示</el-button> |
| | | <el-button v-if="demo === 'Y' " @click="demos('false')" type="warning">取消演示</el-button> |
| | | <el-button v-if="demo === 'N' " @click="demos('true')" type="info">演示</el-button> |
| | | <el-button v-if="demo === 'Y' " @click="demos('false')" type="info">取消演示</el-button> |
| | | </div> |
| | | <div style="margin: 10px auto 10px auto"> |
| | | <el-button v-if="demo === 'N' " @click="rgvStatus(8)" type="primary">启动</el-button> |
| | | <el-button v-if="demo === 'N' " @click="rgvStatus(9)" type="primary">停止</el-button> |
| | | <el-button v-if="demo === 'N' " @click="rgvStatus(14)" type="primary">单机</el-button> |
| | | <el-button v-if="demo === 'N' " @click="rgvStatus(15)" type="primary">联机</el-button> |
| | | <el-button v-if="demo === 'N' " @click="rgvStatus(11)" type="primary">复位按钮</el-button> |
| | | </div> |
| | | <div style="margin: 10px auto 10px auto"> |
| | | <el-button v-if="demo === 'N' " @click="rgvStatus(7)" type="warning">报警消音</el-button> |
| | | <el-button v-if="demo === 'N' " @click="rgvStatus(12)" type="warning">手动</el-button> |
| | | <el-button v-if="demo === 'N' " @click="rgvStatus(13)" type="warning">手动定位</el-button> |
| | | </div> |
| | | <div style="margin: 10px auto 10px auto"> |
| | | <el-button v-if="demo === 'N' " :style="" @click="rgvStatus(5)" type="danger">强制启动</el-button> |
| | | <el-button v-if="demo === 'N' " @click="rgvStatus(10)" type="danger">急停</el-button> |
| | | <el-button v-if="demo === 'N' " @click="rgvStatus(16)" type="danger">货叉定位回中</el-button> |
| | | </div> |
| | | <div style="margin-top: 5px" v-if="demo === 'Y'"> |
| | | <el-button @click="staTova(2,1)" type="warning">输送-置换1</el-button> |
| | |
| | | }); |
| | | }) |
| | | }, |
| | | rgvStatus(method){ |
| | | let that = this |
| | | that.$confirm('此操作存在风险,是否继续','提示',{ |
| | | confirmButtonText: '确定', |
| | | cancelButtonText: '取消', |
| | | type: 'warning' |
| | | }).then(()=>{ |
| | | $.ajax({ |
| | | url: baseUrl + "/rgv/demo/status/rgvStatus", |
| | | headers: { |
| | | 'token': localStorage.getItem('token') |
| | | }, |
| | | data:{ |
| | | rgvNo : this.formParam.rgvNo, |
| | | status : Number(method) |
| | | }, |
| | | method: 'Get', |
| | | success: function (res) { |
| | | if (res.code == 200) { |
| | | that.$message({ |
| | | message: res.msg, |
| | | type: 'success' |
| | | }); |
| | | } else { |
| | | that.$message({ |
| | | message: res.msg, |
| | | type: 'error' |
| | | }); |
| | | } |
| | | } |
| | | }); |
| | | }) |
| | | }, |
| | | requestOperate(method) { |
| | | let that = this |
| | | that.$confirm('此操作存在风险,是否继续','提示',{ |