JAVA无人共享系统:宠物自助洗澡物联网解决方案,开启智能宠物服务新纪元

行业痛点与系统优势

在当下宠物经济蓬勃发展的时代,宠物洗护服务需求激增,传统宠物店面临人力成本高、营业时间受限、服务效率低下等痛点。JAVA无人共享系统宠物自助洗澡物联网结合系统应运而生,以物联网技术为核心,构建了一套完整的“硬件+软件+平台”三位一体的数字化解决方案。该系统通过springboot+mybatisplus+mysql构建稳定高效的后端服务,采用uniapp(vue语法)实现多端统一用户端,配合vue+elementUi开发的管理后台,实现了从用户端到管理端的全链路闭环。

这套系统的核心优势在于其强大的物联网直控设备能力,能够实时监控和管理智能洗澡机、烘干机、恒温供水系统等硬件设备,将传统门店改造为24小时无人值守的自助洗护中心。通过小程序+公众号+H5的多端覆盖,降低了用户使用门槛,提升了获客能力。系统内置的**精准分类、门店管理、团购核销(支持美团、抖音、快手)**等功能,完美契合了当前本地生活服务平台的营销需求,为商家提供了完整的数字化运营工具。

系统架构与技术实现

后端服务架构

后台服务采用业界主流的springboot框架,结合mybatisplus简化数据访问层开发,使用mysql作为持久化存储。整体架构遵循分层设计原则,确保系统的可扩展性和维护性。

// SpringBoot启动类示例
@SpringBootApplication
@MapperScan("com.petwash.mapper")
@EnableTransactionManagement
public class PetWashApplication {
    public static void main(String[] args) {
        SpringApplication.run(PetWashApplication.class, args);
    }
}

// 设备控制服务层核心代码
@Service
@Slf4j
public class DeviceControlService {
    @Autowired
    private DeviceMapper deviceMapper;
    @Autowired
    private MqttClientWrapper mqttClient;
    
    @Transactional(rollbackFor = Exception.class)
    public Result startWash(Long deviceId, Long orderId) {
        // 设备状态校验
        Device device = deviceMapper.selectById(deviceId);
        if(device.getStatus() != DeviceStatus.IDLE) {
            return Result.error("设备正忙,请稍后再试");
        }
        // 更新设备状态
        device.setStatus(DeviceStatus.WORKING);
        device.setCurrentOrderId(orderId);
        deviceMapper.updateById(device);
        // 发送MQTT指令启动设备
        mqttClient.publish(device.getTopic(), "START_WASH");
        return Result.success("设备启动成功");
    }
}
物联网通信机制

系统通过MQTT协议实现与智能洗护设备的双向通信,支持设备状态实时上报、远程控制、故障预警等功能。物联网中台负责设备注册、心跳维护、指令下发和数据采集,确保设备连接的稳定性和实时性。

// MQTT消息监听器
@Component
@Slf4j
public class MqttMessageListener implements MqttMessageHandler {
    @Autowired
    private DeviceStatusService deviceStatusService;
    
    @Override
    public void handleMessage(String topic, MqttMessage message) {
        String payload = new String(message.getPayload());
        log.info("接收到设备消息,topic: {}, payload: {}", topic, payload);
        // 解析设备上报数据
        DeviceReport report = JSON.parseObject(payload, DeviceReport.class);
        // 更新设备状态
        deviceStatusService.updateDeviceStatus(report);
        // 处理异常报警
        if(report.getErrorCode() != null) {
            deviceStatusService.handleDeviceError(report);
        }
    }
}
用户端多端统一

用户端采用**uniapp(vue语法)**框架开发,一套代码可同时编译为微信小程序、H5网页和安卓/iOS应用,极大降低了开发和维护成本。用户端集成了设备查找、在线预约、扫码启动、远程支付、实时监控等核心功能。

<!-- 设备控制页面核心代码 -->
<template>
  <view class="device-control">
    <view class="device-status" :class="statusClass">
      <text>{{ statusText }}</text>
    </view>
    <view class="control-buttons">
      <button v-if="canStart" @click="startDevice">开始洗护</button>
      <button v-if="canPause" @click="pauseDevice">暂停</button>
      <button v-if="canStop" @click="stopDevice">结束</button>
    </view>
    <view class="remaining-time" v-if="remainingTime > 0">
      剩余时间:{{ formatTime(remainingTime) }}
    </view>
  </view>
</template>

<script>
export default {
  data() {
    return {
      deviceInfo: {},
      remainingTime: 0,
      ws: null
    }
  },
  computed: {
    canStart() {
      return this.deviceInfo.status === 'IDLE';
    },
    statusText() {
      const statusMap = {
        'IDLE': '空闲中',
        'WORKING': '工作中',
        'PAUSED': '已暂停',
        'ERROR': '设备故障'
      };
      return statusMap[this.deviceInfo.status] || '未知状态';
    }
  },
  methods: {
    async startDevice() {
      const res = await this.$api.deviceStart({
        deviceId: this.deviceInfo.id,
        orderId: this.currentOrderId
      });
      if(res.code === 200) {
        uni.showToast({ title: '设备已启动' });
        this.connectWebSocket();
      }
    },
    connectWebSocket() {
      this.ws = uni.connectSocket({
        url: `wss://api.petwash.com/ws/device/${this.deviceInfo.id}`
      });
      this.ws.onMessage((msg) => {
        const data = JSON.parse(msg.data);
        this.remainingTime = data.remainingTime;
        this.deviceInfo.status = data.status;
      });
    }
  }
}
</script>
管理后台功能模块

管理后台采用vue+elementUi开发,提供完整的运营管理功能。包括设备管理、门店管理、订单管理、用户管理、营销管理、财务管理等模块,界面简洁直观,操作便捷高效。

<!-- 团购核销管理页面核心代码 -->
<template>
  <div class="voucher-verify">
    <el-card>
      <div slot="header">
        <span>团购券核销</span>
        <el-select v-model="platform" placeholder="选择平台">
          <el-option label="美团" value="meituan"></el-option>
          <el-option label="抖音" value="douyin"></el-option>
          <el-option label="快手" value="kuaishou"></el-option>
        </el-select>
      </div>
      <el-form :model="verifyForm" label-width="100px">
        <el-form-item label="核销码">
          <el-input v-model="verifyForm.code" placeholder="请输入12位核销码"></el-input>
        </el-form-item>
        <el-form-item label="核销门店">
          <el-select v-model="verifyForm.storeId" placeholder="请选择门店">
            <el-option 
              v-for="store in storeList" 
              :key="store.id" 
              :label="store.name" 
              :value="store.id">
            </el-option>
          </el-select>
        </el-form-item>
        <el-form-item>
          <el-button type="primary" @click="doVerify">立即核销</el-button>
          <el-button @click="resetForm">重置</el-button>
        </el-form-item>
      </el-form>
    </el-card>
  </div>
</template>

<script>
export default {
  data() {
    return {
      platform: 'meituan',
      verifyForm: {
        code: '',
        storeId: ''
      },
      storeList: []
    }
  },
  methods: {
    async doVerify() {
      const res = await this.$api.verifyVoucher({
        code: this.verifyForm.code,
        storeId: this.verifyForm.storeId,
        platform: this.platform
      });
      if(res.code === 200) {
        this.$message.success('核销成功');
        this.resetForm();
      } else {
        this.$message.error(res.message);
      }
    }
  }
}
</script>

核心业务功能详解

团购券管理

系统深度对接美团、抖音、快手等主流本地生活平台,支持多平台团购券的统一管理和核销。商家可以在管理后台配置各平台的核销规则,系统自动同步订单数据,实现线上线下数据互通。

// 团购券核销服务
@Service
public class VoucherVerifyService {
    @Autowired
    private VoucherMapper voucherMapper;
    @Autowired
    private OrderService orderService;
    
    @Transactional(rollbackFor = Exception.class)
    public Result verifyVoucher(VerifyRequest request) {
        // 查询券码信息
        Voucher voucher = voucherMapper.selectByCode(request.getCode());
        if(voucher == null) {
            return Result.error("无效的核销码");
        }
        if(voucher.getStatus() != VoucherStatus.UNUSED) {
            return Result.error("该券码已被使用");
        }
        if(voucher.getExpireTime().before(new Date())) {
            return Result.error("该券码已过期");
        }
        // 核销券码
        voucher.setStatus(VoucherStatus.USED);
        voucher.setVerifyTime(new Date());
        voucher.setVerifyStoreId(request.getStoreId());
        voucherMapper.updateById(voucher);
        // 生成使用订单
        orderService.createOrderFromVoucher(voucher);
        return Result.success("核销成功");
    }
}
钱包管理与套餐管理

系统内置完整的钱包管理体系,支持用户充值、消费记录查询、退款等操作。套餐管理功能允许商家自定义多种洗护套餐,支持单次购买、多次卡、年卡等多种销售模式,配合积分兑换功能,提升用户粘性。

// 钱包管理服务
@Service
public class WalletService {
    @Autowired
    private WalletMapper walletMapper;
    @Autowired
    private TransactionMapper transactionMapper;
    
    public Result deductBalance(Long userId, BigDecimal amount, String orderNo) {
        Wallet wallet = walletMapper.selectByUserId(userId);
        if(wallet.getBalance().compareTo(amount) < 0) {
            return Result.error("余额不足");
        }
        // 扣减余额
        wallet.setBalance(wallet.getBalance().subtract(amount));
        walletMapper.updateById(wallet);
        // 记录交易流水
        Transaction transaction = new Transaction();
        transaction.setUserId(userId);
        transaction.setOrderNo(orderNo);
        transaction.setAmount(amount.negate());
        transaction.setType(TransactionType.CONSUME);
        transactionMapper.insert(transaction);
        return Result.success("扣款成功");
    }
    
    // 积分兑换
    public Result exchangePoints(Long userId, Long productId) {
        PointsProduct product = pointsProductMapper.selectById(productId);
        PointsWallet pointsWallet = pointsWalletMapper.selectByUserId(userId);
        if(pointsWallet.getPoints() < product.getPointsNeeded()) {
            return Result.error("积分不足");
        }
        pointsWallet.setPoints(pointsWallet.getPoints() - product.getPointsNeeded());
        pointsWalletMapper.updateById(pointsWallet);
        // 生成兑换订单
        return Result.success("兑换成功");
    }
}
订单管理与门店管理

订单管理模块支持全渠道订单的统一管理,包括线上订单、团购订单、会员订单等。门店管理系统提供门店信息维护、设备管理、员工管理、营业数据分析等功能,帮助商家实现多门店统一管理。

// 订单管理服务
@Service
public class OrderService {
    @Autowired
    private OrderMapper orderMapper;
    @Autowired
    private RabbitTemplate rabbitTemplate;
    
    @Transactional(rollbackFor = Exception.class)
    public Order createOrder(OrderCreateRequest request) {
        Order order = new Order();
        order.setOrderNo(generateOrderNo());
        order.setUserId(request.getUserId());
        order.setStoreId(request.getStoreId());
        order.setDeviceId(request.getDeviceId());
        order.setAmount(request.getAmount());
        order.setStatus(OrderStatus.PENDING_PAY);
        orderMapper.insert(order);
        // 发送延迟消息,30分钟未支付自动取消
        rabbitTemplate.convertAndSend("order.exchange", "order.delay", 
            order.getId(), message -> {
                message.getMessageProperties().setDelay(30 * 60 * 1000);
                return message;
            });
        return order;
    }
    
    @Transactional(rollbackFor = Exception.class)
    public void cancelOrder(Long orderId) {
        Order order = orderMapper.selectById(orderId);
        if(order.getStatus() == OrderStatus.PENDING_PAY) {
            order.setStatus(OrderStatus.CANCELLED);
            orderMapper.updateById(order);
            // 释放设备资源
            deviceService.releaseDevice(order.getDeviceId());
        }
    }
}

市场前景与发展趋势

随着宠物经济持续升温,预计2025年中国宠物市场规模将突破5000亿元,宠物洗护作为高频刚需服务,市场潜力巨大。JAVA无人共享系统宠物自助洗澡物联网结合系统顺应了无人零售和共享经济的大趋势,通过技术手段解决了传统宠物洗护行业的痛点,具有广阔的市场前景。

该系统通过物联网结合技术实现设备直控,配合小程序+公众号+H5的多端覆盖,构建了完整的线上线下服务体系。**精准分类、门店管理、团购核销(支持美团,抖音,快手)**等功能充分满足了商家在本地生活平台的营销需求。钱包管理、套餐管理、积分兑换、订单管理等完善的会员体系,帮助商家提升用户粘性和复购率。

未来,随着5G技术的普及和物联网设备的升级,该系统将进一步拓展功能边界,融入AI智能洗护、远程监控、智能推荐等创新功能,为宠物主提供更便捷、更智能的服务体验,为商家创造更大的商业价值。

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐