| | |
| | | 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.*; |
| | | |
| | |
| | | |
| | | @Autowired |
| | | private BasCrnpService basCrnpService; |
| | | |
| | | @Autowired |
| | | private SlaveProperties slaveProperties; |
| | | |
| | | @RequestMapping(value = "/basCrnp/{id}/auth") |
| | | @ManagerAuth |
| | |
| | | EntityWrapper<BasCrnp> wrapper = new EntityWrapper<>(); |
| | | convert(param, wrapper); |
| | | if (!Cools.isEmpty(orderByField)){wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));} |
| | | return R.ok(basCrnpService.selectPage(new Page<>(curr, limit), wrapper)); |
| | | // return R.ok(basCrnpService.selectPage(new Page<>(curr, limit), wrapper)); |
| | | List<BasCrnp> basCrnpList = basCrnpService.selectList(wrapper); |
| | | Page<BasCrnp> page = new Page<BasCrnp>(0, 100).setRecords(basCrnpList); |
| | | page.setTotal(basCrnpList.size()); |
| | | return R.ok(page); |
| | | } |
| | | |
| | | private <T> void convert(Map<String, Object> map, EntityWrapper<T> wrapper){ |
| | |
| | | @ManagerAuth(memo = "堆垛机修改") |
| | | public R update(BasCrnp basCrnp){ |
| | | if (Cools.isEmpty(basCrnp) || null==basCrnp.getCrnNo()){ |
| | | return R.error(); |
| | | return R.error("请选择堆垛机再操作").add("请选择堆垛机再操作"); |
| | | } |
| | | basCrnp.setModiUser(getUserId()); |
| | | basCrnp.setModiTime(new Date()); |
| | | basCrnpService.updateById(basCrnp); |
| | | 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.setLocMastDemoList(new ArrayList<>(Arrays.asList(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); |
| | |
| | | public R query(String condition) { |
| | | EntityWrapper<BasCrnp> wrapper = new EntityWrapper<>(); |
| | | wrapper.like("crn_no", condition); |
| | | Page<BasCrnp> page = basCrnpService.selectPage(new Page<>(0, 10), wrapper); |
| | | // Page<BasCrnp> page = basCrnpService.selectPage(new Page<>(0, 10), wrapper); |
| | | List<BasCrnp> basCrnpList = basCrnpService.selectList(wrapper); |
| | | List<Map<String, Object>> result = new ArrayList<>(); |
| | | for (BasCrnp basCrnp : page.getRecords()){ |
| | | for (BasCrnp basCrnp : basCrnpList){ |
| | | Map<String, Object> map = new HashMap<>(); |
| | | map.put("id", basCrnp.getCrnNo()); |
| | | map.put("value", basCrnp.getCrnNo()); |