| | |
| | | import com.doumee.dao.business.model.*; |
| | | import com.doumee.dao.system.MultifileMapper; |
| | | import com.doumee.dao.system.model.Multifile; |
| | | import com.doumee.service.business.YwCustomerDeviceAutoBindService; |
| | | import com.doumee.service.business.YwCustomerH5AuthService; |
| | | import com.doumee.service.business.YwCustomerH5BizService; |
| | | import com.doumee.service.business.YwCustomerRechargeBizService; |
| | | import com.doumee.service.business.YwElectricalBizService; |
| | |
| | | @Autowired |
| | | private YwCustomerRechargeBizService ywCustomerRechargeBizService; |
| | | @Autowired |
| | | private YwCustomerDeviceAutoBindService ywCustomerDeviceAutoBindService; |
| | | @Autowired |
| | | private YwCustomerElectricalMapper ywCustomerElectricalMapper; |
| | | @Autowired |
| | | private YwElectricalMapper ywElectricalMapper; |
| | |
| | | private MultifileMapper multifileMapper; |
| | | @Autowired |
| | | private SystemDictDataBiz systemDictDataBiz; |
| | | @Autowired |
| | | private YwCustomerH5AuthService ywCustomerH5AuthService; |
| | | |
| | | @Override |
| | | public List<YwH5Banner> listBanners() { |
| | |
| | | } |
| | | |
| | | @Override |
| | | public Map<String, Object> home(Integer customerId) { |
| | | public Map<String, Object> home(Integer customerId, Integer memberId) { |
| | | YwCustomer customer = requireCustomer(customerId); |
| | | LoginUserInfo loginUser = ywCustomerH5AuthService.buildLoginUserInfo(customerId, memberId); |
| | | YwCustomerRechargeDetailVO detail = ywCustomerRechargeBizService.getDetail(customerId); |
| | | Map<String, Object> map = new LinkedHashMap<>(); |
| | | map.put("customerName", customer.getName()); |
| | | map.put("customerName", loginUser.getCustomerName() != null ? loginUser.getCustomerName() : customer.getName()); |
| | | map.put("memberName", loginUser.getMemberName()); |
| | | map.put("displayName", loginUser.getDisplayName()); |
| | | map.put("electricalCount", detail.getElectricalList() != null ? detail.getElectricalList().size() : 0); |
| | | map.put("conditionerCount", detail.getConditionerList() != null ? detail.getConditionerList().size() : 0); |
| | | map.put("gsConfig", detail.getGsConfig()); |
| | |
| | | @Override |
| | | public PageData<CustomerDeviceH5VO> devicePage(PageWrap<CustomerDeviceQueryDTO> pageWrap, Integer customerId) { |
| | | requireCustomer(customerId); |
| | | ywCustomerDeviceAutoBindService.refreshCustomerDevices(customerId, systemUser()); |
| | | CustomerDeviceQueryDTO q = pageWrap.getModel() != null ? pageWrap.getModel() : new CustomerDeviceQueryDTO(); |
| | | List<CustomerDeviceH5VO> all = new ArrayList<>(); |
| | | if (q.getDeviceType() == null || q.getDeviceType() == 0) { |
| | |
| | | if (Objects.equals(customer.getFirstRechargeDone(), Constants.ONE)) { |
| | | return; |
| | | } |
| | | List<Integer> electricalIds = ywCustomerElectricalMapper.selectList(new QueryWrapper<YwCustomerElectrical>().lambda() |
| | | .eq(YwCustomerElectrical::getCustomerId, customerId) |
| | | .eq(YwCustomerElectrical::getIsdeleted, Constants.ZERO)) |
| | | .stream().map(YwCustomerElectrical::getElectricalId).collect(Collectors.toList()); |
| | | ywCustomerDeviceAutoBindService.refreshCustomerDevices(customerId, user != null ? user : systemUser()); |
| | | List<Integer> electricalIds = ywCustomerDeviceAutoBindService.listElectricalIdsByActiveContracts(customerId); |
| | | for (Integer eid : electricalIds) { |
| | | YwCustomerRechargeElectricalDTO dto = new YwCustomerRechargeElectricalDTO(); |
| | | dto.setCustomerId(customerId); |
| | |
| | | } |
| | | |
| | | private List<CustomerDeviceH5VO> buildElectricalDevices(Integer customerId) { |
| | | List<Integer> ids = ywCustomerElectricalMapper.selectList(new QueryWrapper<YwCustomerElectrical>().lambda() |
| | | .eq(YwCustomerElectrical::getCustomerId, customerId) |
| | | .eq(YwCustomerElectrical::getIsdeleted, Constants.ZERO)) |
| | | .stream().map(YwCustomerElectrical::getElectricalId).collect(Collectors.toList()); |
| | | List<Integer> ids = ywCustomerDeviceAutoBindService.listElectricalIdsByActiveContracts(customerId); |
| | | if (ids.isEmpty()) { |
| | | return Collections.emptyList(); |
| | | } |
| | |
| | | vo.setDeviceId(e.getId()); |
| | | vo.setDeviceName(e.getName()); |
| | | vo.setMeterAccountNo(e.getParamId()); |
| | | vo.setMeterAddress(e.getAddress()); |
| | | vo.setRoomInfo(e.getRoomNames()); |
| | | vo.setBalance(e.getBalance()); |
| | | vo.setBalanceLow(e.getBalance() != null && e.getBalance().compareTo(new BigDecimal("50")) < 0); |
| | |
| | | return true; |
| | | } |
| | | |
| | | private LoginUserInfo systemUser() { |
| | | LoginUserInfo user = new LoginUserInfo(); |
| | | user.setId(1); |
| | | user.setRealname("system"); |
| | | return user; |
| | | } |
| | | |
| | | private YwCustomer requireCustomer(Integer customerId) { |
| | | YwCustomer c = ywCustomerMapper.selectById(customerId); |
| | | if (c == null || Objects.equals(c.getIsdeleted(), Constants.ONE)) { |