Vue+SpringBoot打造房屋租售信息系统(二)

简介: Vue+SpringBoot打造房屋租售信息系统

卖家确认

买家下完房屋销售预订单后,需要卖家再次确认,如下图所示。

卖家点击每一行订单的同意即可完成确认,如下图所示。

同理,买家下完房屋租赁预订单后,也需要卖家再次确认,如下图所示。

卖家也点击每一行订单的同意即可完成确认,如下图所示。


买家付款

卖家再次确认后,交易成功定了下来,接下来买家就可以查到房屋销售交易单,如下图所示。

同理买家也可以查到房屋租赁的交易单,如下图所示。

记下来就可以进行付款了,如下图所示。

交易完成后,买家可查询自己的历史交易记录。


其他模块

系统支持维护用户,如下图所示。

系统支持维护组织架构,如下图所示。

系统支持维护文件,如下图所示。

系统支持维护日志,如下图所示。

系统支持维护数据字典,如下图所示。


样例代码

查询买家的房屋求购单

@RequestMapping(value = "/getByMyPage", method = RequestMethod.GET)
@ApiOperation(value = "查询买家的房屋求购单")
public Result<IPage<CustomerSell>> getByMyPage(@ModelAttribute CustomerSell customerSell ,@ModelAttribute PageVo page){
    QueryWrapper<CustomerSell> qw = new QueryWrapper<>();
    qw.eq("user_id",securityUtil.getCurrUser().getId());
    if(customerSell.getStatus() > -1) {
        qw.eq("status",customerSell.getStatus());
    }
    if(!ZwzNullUtils.isNull(customerSell.getHouseType())) {
        qw.inSql("id","select id from t_customer_sell where house_id in (select id from t_house_sell where house_type like '%" + customerSell.getHouseType() + "%')");
    }
    if(!ZwzNullUtils.isNull(customerSell.getAddress())) {
        qw.inSql("id","select id from t_customer_sell where house_id in (select id from t_house_sell where address like '%" + customerSell.getAddress() + "%')");
    }
    if(!ZwzNullUtils.isNull(customerSell.getUserName())) {
        qw.inSql("id","select id from t_customer_sell where user_id in (select id from a_user where nickname like '%" + customerSell.getUserName() + "%')");
    }
    IPage<CustomerSell> data = iCustomerSellService.page(PageUtil.initMpPage(page),qw);
    for (CustomerSell sell : data.getRecords()) {
        HouseSell houseSell = iHouseSellService.getById(sell.getHouseId());
        sell = HouseVoChangeUtils.fillCustomerSellByHouseSell(sell,houseSell);
        User user = iUserService.getById(sell.getUserId());
        sell = HouseVoChangeUtils.fillCustomerSellByUser(sell,user);
    }
    return new ResultUtil<IPage<CustomerSell>>().setData(data);
}

新增房屋出售单

@RequestMapping(value = "/insert", method = RequestMethod.POST)
@ApiOperation(value = "新增房屋出售单")
public Result<HouseSell> insert(HouseSell houseSell) {
    houseSell.setSellerId(securityUtil.getCurrUser().getId());
    String mobile = houseSell.getMobile();
    if(!ZwzNullUtils.isNull(mobile)) {
        QueryWrapper<User> qw = new QueryWrapper<>();
        qw.eq("mobile",mobile);
        List<User> userList = iUserService.list(qw);
        if(userList.size() > 0) {
            houseSell.setSellerId(userList.get(0).getId());
        }
    }
    iHouseSellService.saveOrUpdate(houseSell);
    return new ResultUtil<HouseSell>().setData(houseSell);
}

房屋租赁单审核

@RequestMapping(value = "/pass", method = RequestMethod.POST)
@ApiOperation(value = "审核")
public Result<Object> pass(@RequestParam String id){
    HouseLease se = iHouseLeaseService.getById(id);
    if(se == null) {
        return ResultUtil.error("不存在");
    }
    se.setStatus(0);
    iHouseLeaseService.saveOrUpdate(se);
    return ResultUtil.success();
}

前端房屋录入表单

<Form ref="form" :model="form" :label-width="100" :rules="formValidate" label-position="left">
    <FormItem label="户型" prop="houseType">
        <Select v-model="form.houseType" clearable style="width:570px">
            <Option value="单身公寓">单身公寓</Option>
            <Option value="三室一厅">三室一厅</Option>
            <Option value="四室一厅">四室一厅</Option>
            <Option value="五室两厅">五室两厅</Option>
            <Option value="其他">其他</Option>
        </Select>
    </FormItem>
    <FormItem label="面积(平方)" prop="houseSize">
        <InputNumber v-model="form.houseSize" min="0" max="5000000" style="width:570px"></InputNumber>
    </FormItem>
    <FormItem label="价格(万元)" prop="houseMoney">
        <InputNumber v-model="form.houseMoney" min="0" max="5000000" style="width:570px"></InputNumber>
    </FormItem>
    <FormItem label="房屋图片" prop="imageUrl">
        <upload-pic-input v-model="form.imageUrl" style="width:570px"></upload-pic-input>
    </FormItem>
    <FormItem label="电话" prop="mobile">
        <Input v-model="form.mobile" clearable style="width:570px" />
    </FormItem>
    <FormItem label="联系人" prop="houseOwner">
        <Input v-model="form.houseOwner" clearable style="width:570px" />
    </FormItem>
    <FormItem label="地址" prop="address">
        <Input v-model="form.address" clearable style="width:570px" />
    </FormItem>
    <FormItem label="备注" prop="remark">
        <Input v-model="form.remark" type="textarea" :rows="4" clearable style="width:570px" />
    </FormItem>
    <Form-item class="br">
        <Button @click="handleSubmit" :loading="submitLoading" type="primary">提交并保存</Button>
        <Button @click="handleReset">重置</Button>
        <Button type="dashed" @click="close">关闭</Button>
    </Form-item>
</Form>

免责声明

  • 本项目开源,仅供个人学习使用,遵循 GPL-3.0 开源协议,转发 / 商用授权请联系作者,否则后果自负
  • 作者拥有本软件构建后的应用系统全部内容所有权及独立的知识产权。
  • 如有问题,欢迎在仓库 Issue 留言,看到后会第一时间回复。相关意见会酌情考虑,但没有一定被采纳的承诺或保证。

下载本系统代码的用户,必须同意以下内容,否则请勿下载

  1. 出于自愿而使用/开发本软件,了解使用本软件的风险,且同意自己承担使用本软件的风险。
  2. 利用本软件构建的网站的任何信息内容以及导致的任何版权纠纷和法律争议及后果和作者无关,作者对此不承担任何责任。
  3. 在任何情况下,对于因使用或无法使用本软件而导致的任何难以合理预估的损失(包括但不仅限于商业利润损失、业务中断与业务信息丢失),作者概不承担任何责任。
  4. 必须了解使用本软件的风险,作者不承诺提供一对一的技术支持、使用担保,也不承担任何因本软件而产生的难以预料的问题的相关责任。

源代码地址:
GitEE:https://gitee.com/yyzwz/house-sell
GitHub:https://github.com/yyzwz/house-sell
CSDN:https://gitcode.net/qq_41464123/house-sell

相关文章
|
2月前
|
开发框架 前端开发 网络协议
Spring Boot结合Netty和WebSocket,实现后台向前端实时推送信息
【10月更文挑战第18天】 在现代互联网应用中,实时通信变得越来越重要。WebSocket作为一种在单个TCP连接上进行全双工通信的协议,为客户端和服务器之间的实时数据传输提供了一种高效的解决方案。Netty作为一个高性能、事件驱动的NIO框架,它基于Java NIO实现了异步和事件驱动的网络应用程序。Spring Boot是一个基于Spring框架的微服务开发框架,它提供了许多开箱即用的功能和简化配置的机制。本文将详细介绍如何使用Spring Boot集成Netty和WebSocket,实现后台向前端推送信息的功能。
495 1
|
1月前
|
JavaScript 安全 Java
如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个具有动态路由和菜单功能的前后端分离应用。
本文介绍了如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个具有动态路由和菜单功能的前后端分离应用。首先,创建并配置 Spring Boot 项目,实现后端 API;然后,使用 Ant Design Pro Vue 创建前端项目,配置动态路由和菜单。通过具体案例,展示了如何快速搭建高效、易维护的项目框架。
115 62
|
7天前
|
存储 JavaScript 前端开发
基于 SpringBoot 和 Vue 开发校园点餐订餐外卖跑腿Java源码
一个非常实用的校园外卖系统,基于 SpringBoot 和 Vue 的开发。这一系统源于黑马的外卖案例项目 经过站长的进一步改进和优化,提供了更丰富的功能和更高的可用性。 这个项目的架构设计非常有趣。虽然它采用了SpringBoot和Vue的组合,但并不是一个完全分离的项目。 前端视图通过JS的方式引入了Vue和Element UI,既能利用Vue的快速开发优势,
52 13
|
14天前
|
JavaScript 安全 Java
java版药品不良反应智能监测系统源码,采用SpringBoot、Vue、MySQL技术开发
基于B/S架构,采用Java、SpringBoot、Vue、MySQL等技术自主研发的ADR智能监测系统,适用于三甲医院,支持二次开发。该系统能自动监测全院患者药物不良反应,通过移动端和PC端实时反馈,提升用药安全。系统涵盖规则管理、监测报告、系统管理三大模块,确保精准、高效地处理ADR事件。
|
1月前
|
XML Java 数据库连接
SpringBoot集成Flowable:打造强大的工作流管理系统
在企业级应用开发中,工作流管理是一个核心组件,它能够帮助我们定义、执行和管理业务流程。Flowable是一个开源的工作流和业务流程管理(BPM)平台,它提供了强大的工作流引擎和建模工具。结合SpringBoot,我们可以快速构建一个高效、灵活的工作流管理系统。本文将探讨如何将Flowable集成到SpringBoot应用中,并展示其强大的功能。
187 1
|
1月前
|
JavaScript 安全 Java
如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个前后端分离的应用框架,实现动态路由和菜单功能
本文介绍了如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个前后端分离的应用框架,实现动态路由和菜单功能。首先,确保开发环境已安装必要的工具,然后创建并配置 Spring Boot 项目,包括添加依赖和配置 Spring Security。接着,创建后端 API 和前端项目,配置动态路由和菜单。最后,运行项目并分享实践心得,帮助开发者提高开发效率和应用的可维护性。
80 2
|
1月前
|
Java Spring 容器
SpringBoot读取配置文件的6种方式,包括:通过Environment、@PropertySource、@ConfigurationProperties、@Value读取配置信息
SpringBoot读取配置文件的6种方式,包括:通过Environment、@PropertySource、@ConfigurationProperties、@Value读取配置信息
97 3
|
1月前
|
JavaScript Java 项目管理
Java毕设学习 基于SpringBoot + Vue 的医院管理系统 持续给大家寻找Java毕设学习项目(附源码)
基于SpringBoot + Vue的医院管理系统,涵盖医院、患者、挂号、药物、检查、病床、排班管理和数据分析等功能。开发工具为IDEA和HBuilder X,环境需配置jdk8、Node.js14、MySQL8。文末提供源码下载链接。
|
2月前
|
存储 安全 Java
打造智能合同管理系统:SpringBoot与电子签章的完美融合
【10月更文挑战第7天】 在数字化转型的浪潮中,电子合同管理系统因其高效、环保和安全的特点,正逐渐成为企业合同管理的新宠。本文将分享如何利用SpringBoot框架实现一个集电子文件签字与合同管理于一体的智能系统,探索技术如何助力合同管理的现代化。
113 4
|
1月前
|
JavaScript NoSQL Java
CC-ADMIN后台简介一个基于 Spring Boot 2.1.3 、SpringBootMybatis plus、JWT、Shiro、Redis、Vue quasar 的前后端分离的后台管理系统
CC-ADMIN后台简介一个基于 Spring Boot 2.1.3 、SpringBootMybatis plus、JWT、Shiro、Redis、Vue quasar 的前后端分离的后台管理系统
45 0

热门文章

最新文章

下一篇
DataWorks