租房发布房源下一步信息

HouseViewController代码

package com.yiju.controller;

import com.github.pagehelper.PageInfo;
import com.yiju.bean.House;
import com.yiju.bean.HouseInfo;
import com.yiju.bean.HouseInter;
import com.yiju.pojo.HouseView;
import com.yiju.service.IHouseViewService;
import com.yiju.util.YijuUtil;
import net.sf.json.JSONObject;
import org.apache.ibatis.annotations.Param;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.servlet.ModelAndView;

import javax.servlet.http.HttpSession;
import java.io.File;
import java.io.IOException;
import java.math.BigDecimal;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;


@Controller

@RequestMapping("house")
public class HouseViewController {
    @Autowired
    public IHouseViewService houseViewService;


    @RequestMapping("findFourHouse.do")
    public ModelAndView findFoundHouse(){
        ModelAndView mv=new ModelAndView();
        List<HouseView> newHouses=houseViewService.findFourHouseByType(0);
        List<HouseView> oldHouses=houseViewService.findFourHouseByType(1);
        List<HouseView> rentHouses=houseViewService.findFourHouseByType(2);
        mv.addObject("newHouses",newHouses);
        mv.addObject("oldHouses",oldHouses);
        mv.addObject("rentHouses",rentHouses);
        mv.setViewName("../main");
        return mv;

    }


    @RequestMapping("findHouseById.do")
    public ModelAndView findHouseById(int houseId){
        HouseView house=houseViewService.findHouseByHouseId(houseId);
        ModelAndView mv=new ModelAndView();
        mv.addObject("houseInfo",house);
        mv.setViewName("details");
        return mv;
    }





    @RequestMapping("findHouse.do")
    public ModelAndView findFourHouse(int currentPage,int houseType){
        ModelAndView mv=new ModelAndView();
        List<HouseView>houses=houseViewService.findHouseByType(currentPage,houseType);
        List<HouseView>fh=houseViewService.findFourHouseByType(houseType);
        PageInfo<HouseView>pageInfo=new PageInfo<>(houses);
        mv.addObject("pageInfo",pageInfo);
        mv.addObject("fh",fh);
        if (houseType==0){
            mv.setViewName("newhouse");
        }else if (houseType==1){
            mv.setViewName("oldhouse");
        }else {
            mv.setViewName("renthouse");
        }

        return mv;

    }


    @RequestMapping("toHousePost2.do")
    public ModelAndView toHousePost2(@Param(value = "houseTitle") String houseTitle,
                                     @Param(value = "houseAddress") String houseAddress,
                                     @Param(value = "housePrice") BigDecimal housePrice,
                                     @Param(value = "priceUnit") String priceUnit,
                                     @Param(value = "houseHeadimg") MultipartFile houseHeadimg,
                                     @Param(value = "housePlanimg1") MultipartFile housePlanimg1,
                                     @Param(value = "housePlanimg2") MultipartFile housePlanimg2,
                                     @Param(value = "houseImg1") MultipartFile houseImg1,
                                     @Param(value = "houseImg2") MultipartFile houseImg2,
                                     @Param(value = "houseImg3") MultipartFile houseImg3,
                                     @Param(value = "houseImg4") MultipartFile houseImg4,
                                     @Param(value = "houseImg5") MultipartFile houseImg5,
                                     @Param(value = "houseImg6") MultipartFile houseImg6,
                                     HttpSession session
                                     ) throws IOException {
        House house=new House();
        house.setHouseTitle(houseTitle);
        house.setHouseAddress(houseAddress);
        house.setHousePrice(housePrice);
        house.setPriceUnit(priceUnit);
        //house.setUserId(10005);

        Map<String, byte[]> images=new HashMap<>();

        if (houseHeadimg.getSize()!=0){
            String picName = YijuUtil.getPicName();
            house.setHouseHeadimg(picName);
            images.put(picName,houseHeadimg.getBytes());
        }

        if (housePlanimg1.getSize()!=0){
            String picName = YijuUtil.getPicName();
            house.setHouseHeadimg(picName);
            images.put(picName,housePlanimg1.getBytes());
        }

        if (housePlanimg2.getSize()!=0){
            String picName = YijuUtil.getPicName();
            house.setHouseHeadimg(picName);
            images.put(picName,housePlanimg2.getBytes());
        }

        if (houseImg1.getSize()!=0){
            String picName = YijuUtil.getPicName();
            house.setHouseHeadimg(picName);
            images.put(picName,houseImg1.getBytes());
        }
        if (houseImg2.getSize()!=0){
            String picName = YijuUtil.getPicName();
            house.setHouseHeadimg(picName);
            images.put(picName,houseImg2.getBytes());
        }
        if (houseImg3.getSize()!=0){
            String picName = YijuUtil.getPicName();
            house.setHouseHeadimg(picName);
            images.put(picName,houseImg3.getBytes());
        }
        if (houseImg4.getSize()!=0){
            String picName = YijuUtil.getPicName();
            house.setHouseHeadimg(picName);
            images.put(picName,houseImg4.getBytes());
        }
        if (houseImg5.getSize()!=0){
            String picName = YijuUtil.getPicName();
            house.setHouseHeadimg(picName);
            images.put(picName,houseImg5.getBytes());
        }
        if (houseImg6.getSize()!=0){
            String picName = YijuUtil.getPicName();
            house.setHouseHeadimg(picName);
            images.put(picName,houseImg6.getBytes());
        }
        session.setAttribute("house",house);
        session.setAttribute("images",images);
     /*   Set<String>keys=images.keySet();
        for (String key:keys){
            MultipartFile file=images.get(key);
            YijuUtil.upload(file.getBytes(),key);


        }

        houseViewService.postHouse(house);*/
        ModelAndView mv=new ModelAndView();
        mv.setViewName("housePost2");
       return mv;
    }
       @RequestMapping("responsePost2.do")
       @ResponseBody
       public String responsePost2(HouseInfo houseInfo,HttpSession session){
       // houseInfo.setHouseId(10001);
          // houseViewService.postHouseInfo(houseInfo);
           session.setAttribute("houseInfo",houseInfo);
           return new JSONObject().toString();
        }



    @RequestMapping("responsePost3.do")
    @ResponseBody
    public String responsePost3(HouseInter houseInter,HttpSession session){
        //houseInter.setHouseId(10013);
        //houseViewService.postHouseInter(houseInter);
        session.setAttribute("houseInter",houseInter);
        return new JSONObject().toString();
    }


    @RequestMapping("doHousePost.do")
    public String doHousePost(HttpSession session) throws IOException {
        House house=(House)session.getAttribute("house");
        house.setUserId(10001);
        Map<String,byte[]>images= (Map<String, byte[]>) session.getAttribute("images");
        HouseInfo houseInfo=(HouseInfo)session.getAttribute("houseInfo");
        HouseInter houseInter=(HouseInter)session.getAttribute("houseInter");
        houseViewService.postHouse(house);
        Set<String>keys=images.keySet();
        for (String key:keys){
          byte[] bytes=images.get(key);
            YijuUtil.upload(bytes,key);
        }
        houseInfo.setHouseId(house.getHouseId());
        houseViewService.postHouseInfo(houseInfo);
        houseInter.setHouseId(house.getHouseId());
        houseViewService.postHouseInter(houseInter);
        return "redirect:findHouseById.do?houseId=" + house.getHouseId();
    }


    }



IHouseViewDao代码

package com.yiju.dao;

import com.yiju.bean.House;
import com.yiju.bean.HouseInfo;
import com.yiju.bean.HouseInter;
import com.yiju.pojo.HouseView;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface IHouseViewDao {
    List<HouseView> findFourHouseByType(@Param("houseType") int houseType);
    HouseView findHouseByHouseId(int houseId);
    List<HouseView> findHouseByType(@Param("houseType") int houseType);
    void postHouse(House house);
    void postHouseInfo(HouseInfo houseInfo);
    void postHouseInter(HouseInter houseInter);
}

HouseViewService代码

package com.yiju.service.impl;

import com.github.pagehelper.PageHelper;
import com.yiju.bean.House;
import com.yiju.bean.HouseInfo;
import com.yiju.bean.HouseInter;
import com.yiju.dao.IHouseViewDao;
import com.yiju.pojo.HouseView;
import com.yiju.service.IHouseViewService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;
@Service
public class HouseViewService implements IHouseViewService {
    @Autowired IHouseViewDao houseViewDao;
    @Override
    public List<HouseView> findFourHouseByType(int houseType) {
        return houseViewDao.findFourHouseByType(houseType);
    }

    @Override
    public HouseView findHouseByHouseId(int houseId) {
        return houseViewDao.findHouseByHouseId(houseId);
    }

    @Override
    public List<HouseView> findHouseByType(int currentPage,int houseType) {
        PageHelper.startPage(currentPage,5);
        return houseViewDao.findHouseByType(houseType);
    }

    @Override
    public void postHouse(House house) {
        houseViewDao.postHouse(house);
    }


       @Override
    public void postHouseInfo(HouseInfo houseInfo) {
        houseViewDao.postHouseInfo(houseInfo);
    }



    @Override
    public void postHouseInter(HouseInter houseInter) {
        houseViewDao.postHouseInter(houseInter);
    }


}

HouseMapper代码

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.yiju.dao.IHouseViewDao">
    <select id="findFourHouseByType" parameterType="int" resultType="com.yiju.pojo.HouseView">
        select * from tb_house a,tb_house_info b where a.house_id=b.house_id and a.is_delete=0
        and a.house_type=#{houseType} order by rand() limit 4
    </select>

    <select id="findHouseByHouseId" parameterType="int" resultType="com.yiju.pojo.HouseView">
        select * from tb_house a,tb_house_info b where a.house_id=b.house_id and a.is_delete=0
        and a.house_Id=#{houseId}
    </select>

    <select id="findHouseByType" parameterType="int" resultType="com.yiju.pojo.HouseView">
        select * from tb_house a,tb_house_info b where a.house_id=b.house_id and a.is_delete=0
        and a.house_type=#{houseType}
    </select>


    <insert id="postHouse" parameterType="com.yiju.bean.House" useGeneratedKeys="true" keyProperty="houseId">
        insert into tb_house(user_id, house_type, house_title, house_headimg, house_planimg1, house_planimg2, house_img1, house_img2, house_img3, house_img4, house_img5, house_img6, house_price, price_unit, house_address, is_delete, create_time, update_time)
        values (#{userId}, #{houseType}, #{houseTitle}, #{houseHeadimg}, #{housePlanimg1}, #{housePlanimg2}, #{houseImg1}, #{houseImg2}, #{houseImg3}, #{houseImg4}, #{houseImg5}, #{houseImg6}, #{housePrice}, #{priceUnit}, #{houseAddress}, #{isDelete}, #{createTime}, #{updateTime})

    </insert>

    <insert id="postHouseInfo" parameterType="com.yiju.bean.HouseInfo" useGeneratedKeys="true" keyProperty="infoId">
        insert into tb_house_info(house_id, house_nature, house_model, house_year, house_valid, house_layout, house_area, house_turn, house_floor, floor_all, house_decorate, house_lift, create_time, update_time)
        values (#{houseId}, #{houseNature}, #{houseModel}, #{houseYear}, #{houseValid}, #{houseLayout}, #{houseArea}, #{houseTurn}, #{houseFloor}, #{floorAll}, #{houseDecorate}, #{houseLift}, #{createTime}, #{updateTime})

    </insert>


    <insert id="postHouseInter" parameterType="com.yiju.bean.HouseInter" useGeneratedKeys="true" keyProperty="interId">
    insert into tb_house_inter(house_id, bed, washing, air, balcony, ice, toilet, kitchen, tv, heater, wardrobe, heating, internet, sofa, create_time, update_time)
    values (#{houseId}, #{bed}, #{washing}, #{air}, #{balcony}, #{ice}, #{toilet}, #{kitchen}, #{tv}, #{heater}, #{wardrobe}, #{heating}, #{internet}, #{sofa}, #{createTime}, #{updateTime})
    </insert>



</mapper>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值