service-common/src/main/java/com/java110/common/cmd/chargeMachine/ListChargeMachineCmd.java
@@ -25,6 +25,7 @@ import com.java110.dto.wechat.SmallWeChatDto; import com.java110.intf.common.IChargeMachineV1InnerServiceSMO; import com.java110.intf.common.IChargeRuleFeeV1InnerServiceSMO; import com.java110.intf.job.IIotInnerServiceSMO; import com.java110.intf.store.ISmallWeChatInnerServiceSMO; import com.java110.utils.cache.UrlCache; import com.java110.utils.exception.CmdException; @@ -58,16 +59,7 @@ private static Logger logger = LoggerFactory.getLogger(ListChargeMachineCmd.class); @Autowired private IChargeMachineV1InnerServiceSMO chargeMachineV1InnerServiceSMOImpl; @Autowired private ISmallWeChatInnerServiceSMO smallWeChatInnerServiceSMOImpl; @Autowired private IChargeRuleFeeV1InnerServiceSMO chargeRuleFeeV1InnerServiceSMOImpl; @Autowired private IChargeCore chargeCoreImpl; private IIotInnerServiceSMO iotInnerServiceSMOImpl; @Override public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) { @@ -78,82 +70,10 @@ @Override public void doCmd(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) throws CmdException { ChargeMachineDto chargeMachineDto = BeanConvertUtil.covertBean(reqJson, ChargeMachineDto.class); int count = chargeMachineV1InnerServiceSMOImpl.queryChargeMachinesCount(chargeMachineDto); List<ChargeMachineDto> chargeMachineDtos = null; if (count > 0) { chargeMachineDtos = chargeMachineV1InnerServiceSMOImpl.queryChargeMachines(chargeMachineDto); freshQrCodeUrl(chargeMachineDtos); // todo 查询设备是否在线 queryMachineState(chargeMachineDtos); // todo 刷入算费规则 queryChargeRuleFee(chargeMachineDtos); } else { chargeMachineDtos = new ArrayList<>(); } ResultVo resultVo = new ResultVo((int) Math.ceil((double) count / (double) reqJson.getInteger("row")), count, chargeMachineDtos); reqJson.put("iotApiCode", "listChargeMachineBmoImpl"); ResultVo resultVo = iotInnerServiceSMOImpl.postIot(reqJson); ResponseEntity<String> responseEntity = new ResponseEntity<String>(resultVo.toString(), HttpStatus.OK); cmdDataFlowContext.setResponseEntity(responseEntity); } private void queryChargeRuleFee(List<ChargeMachineDto> chargeMachineDtos) { if (chargeMachineDtos == null || chargeMachineDtos.size() != 1) { return; } ChargeRuleFeeDto chargeRuleFeeDto = new ChargeRuleFeeDto(); chargeRuleFeeDto.setRuleId(chargeMachineDtos.get(0).getRuleId()); chargeRuleFeeDto.setCommunityId(chargeMachineDtos.get(0).getCommunityId()); List<ChargeRuleFeeDto> fees = chargeRuleFeeV1InnerServiceSMOImpl.queryChargeRuleFees(chargeRuleFeeDto); chargeMachineDtos.get(0).setFees(fees); } private void queryMachineState(List<ChargeMachineDto> chargeMachineDtos) { if (chargeMachineDtos == null || chargeMachineDtos.size() < 1 || chargeMachineDtos.size() > 10) { return; } chargeCoreImpl.queryChargeMachineState(chargeMachineDtos); } /** * 充电桩二维码 * * @param chargeMachineDtos */ private void freshQrCodeUrl(List<ChargeMachineDto> chargeMachineDtos) { if (chargeMachineDtos == null || chargeMachineDtos.size() < 1) { return; } SmallWeChatDto smallWeChatDto = new SmallWeChatDto(); smallWeChatDto.setObjId(chargeMachineDtos.get(0).getCommunityId()); smallWeChatDto.setWeChatType(SmallWeChatDto.WECHAT_TYPE_PUBLIC); List<SmallWeChatDto> smallWeChatDtos = smallWeChatInnerServiceSMOImpl.querySmallWeChats(smallWeChatDto); String appId = ""; if (smallWeChatDtos != null && smallWeChatDtos.size() > 0) { appId = smallWeChatDtos.get(0).getAppId(); } String ownerUrl = UrlCache.getOwnerUrl(); for (ChargeMachineDto chargeMachineDto : chargeMachineDtos) { chargeMachineDto.setQrCode(ownerUrl + "/#/pages/machine/machineToCharge?machineId=" + chargeMachineDto.getMachineId() + "&communityId=" + chargeMachineDto.getCommunityId() + "&wAppId=" + appId ); } } } service-common/src/main/java/com/java110/common/cmd/chargeMachine/ListChargeMachineOrderCmd.java
@@ -17,18 +17,24 @@ import com.alibaba.fastjson.JSONObject; import com.java110.core.annotation.Java110Cmd; import com.java110.core.context.CmdContextUtils; import com.java110.core.context.ICmdDataFlowContext; import com.java110.core.event.cmd.Cmd; import com.java110.core.event.cmd.CmdEvent; import com.java110.dto.user.UserDto; import com.java110.intf.common.IChargeMachineOrderV1InnerServiceSMO; import com.java110.intf.job.IIotInnerServiceSMO; import com.java110.intf.user.IUserV1InnerServiceSMO; import com.java110.utils.exception.CmdException; import com.java110.utils.util.Assert; import com.java110.utils.util.BeanConvertUtil; import com.java110.vo.ResultVo; import org.springframework.beans.factory.annotation.Autowired; import com.java110.dto.charge.ChargeMachineOrderDto; import java.util.List; import java.util.ArrayList; import org.springframework.http.ResponseEntity; import org.springframework.http.HttpStatus; import org.slf4j.Logger; @@ -48,9 +54,12 @@ @Java110Cmd(serviceCode = "chargeMachine.listChargeMachineOrder") public class ListChargeMachineOrderCmd extends Cmd { private static Logger logger = LoggerFactory.getLogger(ListChargeMachineOrderCmd.class); private static Logger logger = LoggerFactory.getLogger(ListChargeMachineOrderCmd.class); @Autowired private IChargeMachineOrderV1InnerServiceSMO chargeMachineOrderV1InnerServiceSMOImpl; private IIotInnerServiceSMO iotInnerServiceSMOImpl; @Autowired private IUserV1InnerServiceSMO userV1InnerServiceSMOImpl; @Override public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) { @@ -61,22 +70,18 @@ @Override public void doCmd(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) throws CmdException { ChargeMachineOrderDto chargeMachineOrderDto = BeanConvertUtil.covertBean(reqJson, ChargeMachineOrderDto.class); String userId = CmdContextUtils.getUserId(cmdDataFlowContext); int count = chargeMachineOrderV1InnerServiceSMOImpl.queryChargeMachineOrdersCount(chargeMachineOrderDto); UserDto userDto = new UserDto(); userDto.setUserId(userId); List<UserDto> userDtos = userV1InnerServiceSMOImpl.queryUsers(userDto); List<ChargeMachineOrderDto> chargeMachineOrderDtos = null; Assert.listOnlyOne(userDtos, "用户不存在"); reqJson.put("personTel", userDtos.get(0).getTel()); reqJson.put("iotApiCode", "listChargeMachineOrderBmoImpl"); ResultVo resultVo = iotInnerServiceSMOImpl.postIot(reqJson); ResponseEntity<String> responseEntity = new ResponseEntity<String>(resultVo.toString(), HttpStatus.OK); if (count > 0) { chargeMachineOrderDtos = chargeMachineOrderV1InnerServiceSMOImpl.queryChargeMachineOrders(chargeMachineOrderDto); } else { chargeMachineOrderDtos = new ArrayList<>(); } ResultVo resultVo = new ResultVo((int) Math.ceil((double) count / (double) reqJson.getInteger("row")), count, chargeMachineOrderDtos); ResponseEntity<String> responseEntity = new ResponseEntity<String>(resultVo.toString(), HttpStatus.OK); cmdDataFlowContext.setResponseEntity(responseEntity); cmdDataFlowContext.setResponseEntity(responseEntity); } } service-common/src/main/java/com/java110/common/cmd/chargeMachine/ListChargeMachinePortCmd.java
@@ -21,6 +21,7 @@ import com.java110.core.event.cmd.Cmd; import com.java110.core.event.cmd.CmdEvent; import com.java110.intf.common.IChargeMachinePortV1InnerServiceSMO; import com.java110.intf.job.IIotInnerServiceSMO; import com.java110.utils.exception.CmdException; import com.java110.utils.util.Assert; import com.java110.utils.util.BeanConvertUtil; @@ -52,7 +53,7 @@ private static Logger logger = LoggerFactory.getLogger(ListChargeMachinePortCmd.class); @Autowired private IChargeMachinePortV1InnerServiceSMO chargeMachinePortV1InnerServiceSMOImpl; private IIotInnerServiceSMO iotInnerServiceSMOImpl; @Override public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) { @@ -64,36 +65,13 @@ @Override public void doCmd(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) throws CmdException { ChargeMachinePortDto chargeMachinePortDto = BeanConvertUtil.covertBean(reqJson, ChargeMachinePortDto.class); int count = chargeMachinePortV1InnerServiceSMOImpl.queryChargeMachinePortsCount(chargeMachinePortDto); List<ChargeMachinePortDto> chargeMachinePortDtos = null; if (count > 0) { chargeMachinePortDtos = chargeMachinePortV1InnerServiceSMOImpl.queryChargeMachinePorts(chargeMachinePortDto); //调用 第三方查询 插槽状态 // queryPortState(chargeMachinePortDtos); } else { chargeMachinePortDtos = new ArrayList<>(); } ResultVo resultVo = new ResultVo((int) Math.ceil((double) count / (double) reqJson.getInteger("row")), count, chargeMachinePortDtos); reqJson.put("iotApiCode", "listChargeMachinePortBmoImpl"); ResultVo resultVo = iotInnerServiceSMOImpl.postIot(reqJson); ResponseEntity<String> responseEntity = new ResponseEntity<String>(resultVo.toString(), HttpStatus.OK); cmdDataFlowContext.setResponseEntity(responseEntity); } // private void queryPortState(List<ChargeMachinePortDto> chargeMachinePortDtos) { // if (chargeMachinePortDtos == null || chargeMachinePortDtos.size() < 1) { // return; // // } // // for (ChargeMachinePortDto chargeMachinePortDto : chargeMachinePortDtos) { // chargeMachinePortDto.setStateName("空闲"); // } // } }