| | |
| | | import com.java110.dto.fee.FeeAttrDto; |
| | | import com.java110.dto.fee.FeeConfigDto; |
| | | import com.java110.dto.fee.FeeDto; |
| | | import com.java110.dto.machine.CarBlackWhiteDto; |
| | | import com.java110.dto.machine.CarInoutDetailDto; |
| | | import com.java110.dto.machine.CarInoutDto; |
| | | import com.java110.dto.machine.MachineDto; |
| | |
| | | import com.java110.intf.fee.IFeeInnerServiceSMO; |
| | | import com.java110.intf.fee.ITempCarFeeConfigInnerServiceSMO; |
| | | import com.java110.intf.user.IBuildingOwnerV1InnerServiceSMO; |
| | | import com.java110.intf.user.ICarBlackWhiteV1InnerServiceSMO; |
| | | import com.java110.intf.user.IOwnerCarInnerServiceSMO; |
| | | import com.java110.intf.user.IOwnerCarV1InnerServiceSMO; |
| | | import com.java110.po.car.CarInoutDetailPo; |
| | |
| | | @Autowired |
| | | private IParkingBoxAreaV1InnerServiceSMO parkingBoxAreaV1InnerServiceSMOImpl; |
| | | |
| | | @Autowired |
| | | private ICarBlackWhiteV1InnerServiceSMO carBlackWhiteV1InnerServiceSMOImpl; |
| | | |
| | | @Override |
| | | public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) { |
| | | Assert.hasKeyAndValue(reqJson, "machineCode", "必填,请填写设备编码"); |
| | |
| | | |
| | | //是否是临时车 |
| | | String tempCar = OwnerCarDto.LEASE_TYPE_TEMP; |
| | | String tempCarName ="临时车"; |
| | | |
| | | |
| | | //查询设备信息 |
| | |
| | | //说明是临时车 |
| | | if (ownerCarDtos == null || ownerCarDtos.size() == 0) { |
| | | tempCar = CAR_TYPE_NO_DATA; |
| | | tempCarName = "临时车"; |
| | | } else { |
| | | reqJson.put("carId", ownerCarDtos.get(0).getCarId()); |
| | | tempCar = ownerCarDtos.get(0).getLeaseType(); |
| | | tempCarName = ownerCarDtos.get(0).getLeaseTypeName(); |
| | | if(ownerCarDtos.size()>1){ |
| | | for(OwnerCarDto tmpOwnerCarDto : ownerCarDtos){ |
| | | if(OwnerCarDto.LEASE_TYPE_TEMP.equals(tmpOwnerCarDto.getLeaseType())){ |
| | | continue; |
| | | } |
| | | tempCar = tmpOwnerCarDto.getLeaseType(); |
| | | tempCarName = tmpOwnerCarDto.getLeaseTypeName(); |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | //进场处理 |
| | | if (MachineDto.DIRECTION_IN.equals(machineDtos.get(0).getDirection())) { |
| | | carIn(reqJson, machineDtos.get(0), tempCar); |
| | | carIn(reqJson, machineDtos.get(0), tempCar,tempCarName); |
| | | } else { |
| | | carOut(reqJson, machineDtos.get(0), tempCar); |
| | | carOut(reqJson, machineDtos.get(0), tempCar,tempCarName); |
| | | } |
| | | |
| | | } |
| | |
| | | * @param machineDto |
| | | * @param tempCar |
| | | */ |
| | | private void carOut(JSONObject reqJson, MachineDto machineDto, String tempCar) { |
| | | private void carOut(JSONObject reqJson, MachineDto machineDto, String tempCar,String tempCarName) { |
| | | |
| | | String state = CarInoutDto.STATE_OUT; |
| | | //进场失败记录 |
| | |
| | | carInoutDetailPo.setRemark(reqJson.getString("remark")); |
| | | carInoutDetailPo.setState(state); |
| | | carInoutDetailPo.setCarType(CAR_TYPE_NO_DATA.equals(tempCar) ? OwnerCarDto.LEASE_TYPE_TEMP + "" : tempCar + ""); |
| | | carInoutDetailPo.setCarTypeName(CAR_TYPE_NO_DATA.equals(tempCar) ? "临时车" : tempCarName); |
| | | int flag = carInoutDetailV1InnerServiceSMOImpl.saveCarInoutDetail(carInoutDetailPo); |
| | | if (flag < 1) { |
| | | throw new CmdException("保存出记录明细失败"); |
| | |
| | | carInoutDetailPo.setMachineId(machineDto.getMachineId()); |
| | | carInoutDetailPo.setPaId(carInoutDtos.get(0).getPaId()); |
| | | carInoutDetailPo.setRemark(reqJson.getString("remark")); |
| | | carInoutDetailPo.setPhotoJpg(reqJson.getString("photoJpg")); |
| | | carInoutDetailPo.setState(state); |
| | | carInoutDetailPo.setCarType(CAR_TYPE_NO_DATA.equals(tempCar) ? OwnerCarDto.LEASE_TYPE_TEMP : tempCar + ""); |
| | | if(CAR_TYPE_NO_DATA.equals(tempCar)){ |
| | | carInoutDetailPo.setCarType(OwnerCarDto.LEASE_TYPE_TEMP); |
| | | carInoutDetailPo.setCarTypeName("临时车"); |
| | | //检查是否为黑白名单 |
| | | CarBlackWhiteDto carBlackWhiteDto = new CarBlackWhiteDto(); |
| | | carBlackWhiteDto.setCarNum(reqJson.getString("carNum")); |
| | | carBlackWhiteDto.setPaId(carInoutDtos.get(0).getPaId()); |
| | | carBlackWhiteDto.setValidity("Y"); |
| | | List<CarBlackWhiteDto> carBlackWhiteDtos = carBlackWhiteV1InnerServiceSMOImpl.queryCarBlackWhites(carBlackWhiteDto); |
| | | if(carBlackWhiteDtos != null && carBlackWhiteDtos.size() >0 ){ |
| | | if(CarBlackWhiteDto.BLACK_WHITE_BLACK.equals(carBlackWhiteDtos.get(0).getBlackWhite())){ |
| | | carInoutDetailPo.setCarType("B"); |
| | | carInoutDetailPo.setCarTypeName("黑名单"); |
| | | }else{ |
| | | carInoutDetailPo.setCarType("W"); |
| | | carInoutDetailPo.setCarTypeName("白名单"); |
| | | } |
| | | } |
| | | }else{ |
| | | carInoutDetailPo.setCarType(tempCar); |
| | | carInoutDetailPo.setCarTypeName(tempCarName); |
| | | } |
| | | int flag = carInoutDetailV1InnerServiceSMOImpl.saveCarInoutDetail(carInoutDetailPo); |
| | | |
| | | if (flag < 1) { |
| | |
| | | * @param machineDto |
| | | * @param tempCar |
| | | */ |
| | | private void carIn(JSONObject reqJson, MachineDto machineDto, String tempCar) { |
| | | private void carIn(JSONObject reqJson, MachineDto machineDto, String tempCar,String tempCarName) { |
| | | String state = CarInoutDto.STATE_IN; |
| | | //进场失败记录 |
| | | if (reqJson.containsKey("state") && "5".equals(reqJson.getString("state"))) { |
| | |
| | | carInoutDetailPo.setPaId(paId); |
| | | carInoutDetailPo.setState(state); |
| | | carInoutDetailPo.setRemark(reqJson.getString("remark")); |
| | | carInoutDetailPo.setCarType(CAR_TYPE_NO_DATA.equals(tempCar)?OwnerCarDto.LEASE_TYPE_TEMP:tempCar); |
| | | carInoutDetailPo.setPhotoJpg(reqJson.getString("photoJpg")); |
| | | if(CAR_TYPE_NO_DATA.equals(tempCar)){ |
| | | carInoutDetailPo.setCarType(OwnerCarDto.LEASE_TYPE_TEMP); |
| | | carInoutDetailPo.setCarTypeName("临时车"); |
| | | //检查是否为黑白名单 |
| | | CarBlackWhiteDto carBlackWhiteDto = new CarBlackWhiteDto(); |
| | | carBlackWhiteDto.setCarNum(reqJson.getString("carNum")); |
| | | carBlackWhiteDto.setPaId(paId); |
| | | carBlackWhiteDto.setValidity("Y"); |
| | | List<CarBlackWhiteDto> carBlackWhiteDtos = carBlackWhiteV1InnerServiceSMOImpl.queryCarBlackWhites(carBlackWhiteDto); |
| | | if(carBlackWhiteDtos != null && carBlackWhiteDtos.size() >0 ){ |
| | | if(CarBlackWhiteDto.BLACK_WHITE_BLACK.equals(carBlackWhiteDtos.get(0).getBlackWhite())){ |
| | | carInoutDetailPo.setCarType("B"); |
| | | carInoutDetailPo.setCarTypeName("黑名单"); |
| | | }else{ |
| | | carInoutDetailPo.setCarType("W"); |
| | | carInoutDetailPo.setCarTypeName("白名单"); |
| | | } |
| | | } |
| | | }else{ |
| | | carInoutDetailPo.setCarType(tempCar); |
| | | carInoutDetailPo.setCarTypeName(tempCarName); |
| | | } |
| | | flag = carInoutDetailV1InnerServiceSMOImpl.saveCarInoutDetail(carInoutDetailPo); |
| | | |
| | | if (flag < 1) { |
| | | throw new CmdException("保存入记录明细失败"); |
| | | } |
| | | //月租车 |
| | | if (!OwnerCarDto.LEASE_TYPE_TEMP.equals(tempCar)) { |
| | | if (!OwnerCarDto.LEASE_TYPE_TEMP.equals(carInoutDetailPo.getCarType())) { |
| | | return; |
| | | } |
| | | |