基于springboot+vue的房产销售系统

基于springboot+vue的房产销售系统(前后端分离)

博主主页
博主简介:Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万+、专注Java技术领域和毕业设计项目实战
主要内容:毕业设计(|等)、、学习资料、面试题库、技术咨询
文末联系获取

项目背景:

房产销售也都将通过计算机进行整体智能化操作,对于房产销售系统所牵扯的管理及数据保存都是非常多的,例如管理员;首页、个人中心、用户管理、销售经理管理、房源信息管理、房源类型管理、房子户型管理、交易订单管理、预约看房管理、评价管理、我的收藏管理、系统管理,用户;首页、个人中心、房源信息管理、交易订单管理、预约看房管理、评价管理、我的收藏管理,销售经理;首页、个人中心、房源信息管理、交易订单管理、预约看房管理、评价管理,前台首页;首页、房源信息、个人中心、后台管理等功能,这给管理者的工作带来了巨大的挑战,面对大量的信息,传统的管理系统,都是通过笔记的方式进行详细信息的统计,后来出现电脑,通过电脑输入软件将纸质的信息统计到电脑上,这种方式比较传统,而且想要统计数据信息比较麻烦,还受时间和空间的影响,所以为此开发了房产销售系统;为用户提供了方便管理平台,方便管理员查看及维护,并且可以通过需求进行内容的编辑及维护等;对于用户而言,可以随时进行查询所需信息,管理员可以足不出户就可以获取到系统的数据信息等,而且还能节省用户很多时间,所以开发房产销售系统给管理者带来了很大的方便,同时也方便管理员对用户信息进行处理。

功能介绍:

本系统采用的数据库是Mysql,使用SpringBoot框架开发,运行环境使用Tomcat服务器,ECLIPSE 是本系统的开发平台。在设计过程中,充分保证了系统代码的良好可读性、实用性、易扩展性、通用性、便于后期维护、操作方便以及页面简洁等特点。

模块包括主界面,首页、个人中心、用户管理、销售经理管理、房源信息管理、房源类型管理、房子户型管理、交易订单管理、预约看房管理、评价管理、我的收藏管理、系统管理等进行相应的操作。

系统包含技术:

后端:springboot,mybatis 前端:element-ui、js、css等 开发工具:idea/vscode 数据库:mysql 5.7 JDK版本:jdk1.8

部分截图说明:

房产销售系统,在前台首页可以查看首页、房源信息、个人中心、后台管理等内容。

房源信息,在房源信息页面通过填写房源名称、房源类型、房源户型、房源图片、所在区域、房源位置、房源面积、每米价格、总计、发布时间、销售账号、销售姓名、销售手机等信息进行购房、预约及点我收藏等操作。

个人中心,在个人中心页面通过填写账号、密码、姓名、性别、手机、邮箱、照片、备注等信息进行更新信息等操作。

管理员通过用户名和密码、角色填写完成后进行登录。管理员登录成功后进入到系统操作界面,可以对首页、个人中心、用户管理、销售经理管理、房源信息管理、房源类型管理、房子户型管理、交易订单管理、预约看房管理、评价管理、我的收藏管理、系统管理等功能模块进行相对应操作。

用户管理:通过列表可以获取账号、姓名、性别、手机、邮箱、照片、备注等内容,可以进行详情、修改或删除等操作。

 

房源信息管理:通过列表可以获取房源名称、房源类型、房源户型、房源图片、所在区域、房源位置、房源面积、每米价格、总计、发布时间、销售账号、销售姓名、销售手机等信息,进行详情、修改、查看评论、删除等操作。

预约看房管理:通过列表可以获取账号、姓名、手机、房源名称、房源类型、房源户型、房源图片、预约时间、销售账号、销售姓名、销售手机、审核回复、审核状态等信息,进行详情、修改、删除操作。

部分代码:

/**
     * 后端列表
     */
    @RequestMapping("/page")
    public R page(@RequestParam Map<String, Object> params,FangyuanxinxiEntity fangyuanxinxi,
        HttpServletRequest request){
        String tableName = request.getSession().getAttribute("tableName").toString();
        if(tableName.equals("xiaoshoujingli")) {
            fangyuanxinxi.setXiaoshouzhanghao((String)request.getSession().getAttribute("username"));
        }
        EntityWrapper<FangyuanxinxiEntity> ew = new EntityWrapper<FangyuanxinxiEntity>();
        PageUtils page = fangyuanxinxiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, fangyuanxinxi), params), params));

        return R.ok().put("data", page);
    }

    /**
     * 前端列表
     */
    @IgnoreAuth
    @RequestMapping("/list")
    public R list(@RequestParam Map<String, Object> params,FangyuanxinxiEntity fangyuanxinxi, HttpServletRequest request){
        EntityWrapper<FangyuanxinxiEntity> ew = new EntityWrapper<FangyuanxinxiEntity>();
        PageUtils page = fangyuanxinxiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, fangyuanxinxi), params), params));
        return R.ok().put("data", page);
    }

    /**
     * 列表
     */
    @RequestMapping("/lists")
    public R list( FangyuanxinxiEntity fangyuanxinxi){
        EntityWrapper<FangyuanxinxiEntity> ew = new EntityWrapper<FangyuanxinxiEntity>();
        ew.allEq(MPUtil.allEQMapPre( fangyuanxinxi, "fangyuanxinxi")); 
        return R.ok().put("data", fangyuanxinxiService.selectListView(ew));
    }

     /**
     * 查询
     */
    @RequestMapping("/query")
    public R query(FangyuanxinxiEntity fangyuanxinxi){
        EntityWrapper< FangyuanxinxiEntity> ew = new EntityWrapper< FangyuanxinxiEntity>();
        ew.allEq(MPUtil.allEQMapPre( fangyuanxinxi, "fangyuanxinxi")); 
        FangyuanxinxiView fangyuanxinxiView =  fangyuanxinxiService.selectView(ew);
        return R.ok("查询房源信息成功").put("data", fangyuanxinxiView);
    }

    /**
     * 后端详情
     */
    @RequestMapping("/info/{id}")
    public R info(@PathVariable("id") Long id){
        FangyuanxinxiEntity fangyuanxinxi = fangyuanxinxiService.selectById(id);
        fangyuanxinxi.setClicknum(fangyuanxinxi.getClicknum()+1);
        fangyuanxinxi.setClicktime(new Date());
        fangyuanxinxiService.updateById(fangyuanxinxi);
        return R.ok().put("data", fangyuanxinxi);
    }

    /**
     * 前端详情
     */
    @RequestMapping("/detail/{id}")
    public R detail(@PathVariable("id") Long id){
        FangyuanxinxiEntity fangyuanxinxi = fangyuanxinxiService.selectById(id);
        fangyuanxinxi.setClicknum(fangyuanxinxi.getClicknum()+1);
        fangyuanxinxi.setClicktime(new Date());
        fangyuanxinxiService.updateById(fangyuanxinxi);
        return R.ok().put("data", fangyuanxinxi);
    }




    /**
     * 后端保存
     */
    @RequestMapping("/save")
    public R save(@RequestBody FangyuanxinxiEntity fangyuanxinxi, HttpServletRequest request){
        fangyuanxinxi.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
        //ValidatorUtils.validateEntity(fangyuanxinxi);
        fangyuanxinxiService.insert(fangyuanxinxi);
        return R.ok();
    }

    /**
     * 前端保存
     */
    @RequestMapping("/add")
    public R add(@RequestBody FangyuanxinxiEntity fangyuanxinxi, HttpServletRequest request){
        fangyuanxinxi.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
        //ValidatorUtils.validateEntity(fangyuanxinxi);
        fangyuanxinxiService.insert(fangyuanxinxi);
        return R.ok();
    }

    /**
     * 修改
     */
    @RequestMapping("/update")
    public R update(@RequestBody FangyuanxinxiEntity fangyuanxinxi, HttpServletRequest request){
        //ValidatorUtils.validateEntity(fangyuanxinxi);
        fangyuanxinxiService.updateById(fangyuanxinxi);//全部更新
        return R.ok();
    }


    /**
     * 删除
     */
    @RequestMapping("/delete")
    public R delete(@RequestBody Long[] ids){
        fangyuanxinxiService.deleteBatchIds(Arrays.asList(ids));
        return R.ok();
    }

以上就是部分功能展示,从整体上来看,本系统功能是十分完整的,界面设计简洁大方,交互友好,数据库设计也很合理,规模适中,代码工整,清晰,适合学习使用。好了,今天就到这儿吧,小伙伴们点赞、收藏、评论,一键三连走起呀,下期见~~

原文链接:https://www.mtycode.com/1197.html,转载请注明出处,更多项目请进入官网:www.maotouyingcc.com。

0

评论0

请先

显示验证码
没有账号? 注册  忘记密码?