springMVC實現人氣,價格排序

1,前臺 web

<a th:href="@{initGoodsByPopularDesc(commodityTypeId=${goodsForm.commodityTypeId})}" th:class="${orderTypeId}==3?'btn btn-default btn-danger':'btn btn-default'" th:if="${orderTypeId}!=2">&nbsp;人&nbsp;氣<i></i>&nbsp;</a>sql

 <a th:href="@{initGoodsByPopular(commodityTypeId=${goodsForm.commodityTypeId})}" th:class="${orderTypeId}==2?'btn btn-default btn-danger':'btn btn-default'" th:if="${orderTypeId}==2">&nbsp;人&nbsp;氣<i class="up"></i>&nbsp;</a>apache

 <a th:href="@{initGoodsByPriceDesc(commodityTypeId=${goodsForm.commodityTypeId})}" th:class="${orderTypeId}==5?'btn btn-default btn-danger':'btn btn-default'" th:if="${orderTypeId}!=4">&nbsp;價&nbsp;格<i></i>&nbsp;</a>session

 <a th:href="@{initGoodsByPrice(commodityTypeId=${goodsForm.commodityTypeId})}" th:class="${orderTypeId}==4?'btn btn-default btn-danger':'btn btn-default'" th:if="${orderTypeId}==4">&nbsp;價&nbsp;格<i class="up"></i>&nbsp;</a>app

2,controller 
ide

@Slf4j ui

@Controller("GoodsController")spa

@RequestMapping("/").net

public class GoodsController {orm

@Autowired

GoodsService goodsService;

@RequestMapping(value = "initGoodsByPopularDesc", method = RequestMethod.GET)

    public String initGoodsByPopularDesc(Model model, HttpSession session, GoodsForm goodsForm, Device device) {

    log.info("以人氣爲條件商品列表初始化");

    List<GoodsForm> commodityType = goodsService.getType();

    model.addAttribute("commodityType", goodsService.getType());

    if(goodsForm.getCommodityTypeId()==null)

    {

goodsForm.setCommodityTypeId(commodityType.get(0).getCommodityTypeId());

model.addAttribute("list", goodsService.getTypeList(goodsForm));

   model.addAttribute("goodsForm", goodsForm);

    }

    else

    {model.addAttribute("goodsForm", goodsForm);

    model.addAttribute("list", goodsService.getTypeList(goodsForm));

    }

    UVO uvo = (UVO)session.getAttribute("UVO");

    if (uvo == null) {

    uvo = new UVO();

    session.setAttribute("UVO", uvo);

    }

    model.addAttribute("list", goodsService.searchGoodsListByPopularDesc(goodsForm));

    model.addAttribute("orderTypeId", 2);

    CartForm cartForm = new CartForm();

    cartForm.setGuestId(uvo.getGuestId());

    model.addAttribute("cartList", cartService.searchCartList(cartForm));

    if(device.isNormal()) {

    return "shop/list";

    } else {

    return "mobile/list";

    }

    }

    @RequestMapping(value = "initGoodsByPopular", method = RequestMethod.GET)

    public String initGoodsByPopular(Model model, HttpSession session, GoodsForm goodsForm, Device device) {

    log.info("以人氣爲條件商品列表初始化");

    List<GoodsForm> commodityType = goodsService.getType();

    model.addAttribute("commodityType", goodsService.getType());

    if(goodsForm.getCommodityTypeId()==null)

    {

goodsForm.setCommodityTypeId(commodityType.get(0).getCommodityTypeId());

model.addAttribute("list", goodsService.getTypeList(goodsForm));

   model.addAttribute("goodsForm", goodsForm);

    }

    else

    {model.addAttribute("goodsForm", goodsForm);

    model.addAttribute("list", goodsService.getTypeList(goodsForm));

    }

    UVO uvo = (UVO)session.getAttribute("UVO");

    if (uvo == null) {

    uvo = new UVO();

    session.setAttribute("UVO", uvo);

    }

    model.addAttribute("list", goodsService.searchGoodsListByPopular(goodsForm));

    model.addAttribute("orderTypeId", 3);

    CartForm cartForm = new CartForm();

    cartForm.setGuestId(uvo.getGuestId());

    model.addAttribute("cartList", cartService.searchCartList(cartForm));

    if(device.isNormal()) {

    return "shop/list";

    } else {

    return "mobile/list";

    }

    }

    @RequestMapping(value = "initGoodsByPriceDesc", method = RequestMethod.GET)

    public String initGoodsByPriceDesc(Model model, HttpSession session, GoodsForm goodsForm, Device device) {

    log.info("以價格爲條件商品列表初始化");

    List<GoodsForm> commodityType = goodsService.getType();

    model.addAttribute("commodityType", goodsService.getType());

    if(goodsForm.getCommodityTypeId()==null)

    {

goodsForm.setCommodityTypeId(commodityType.get(0).getCommodityTypeId());

model.addAttribute("list", goodsService.getTypeList(goodsForm));

   model.addAttribute("goodsForm", goodsForm);

    }

    else

    {model.addAttribute("goodsForm", goodsForm);

    model.addAttribute("list", goodsService.getTypeList(goodsForm));

    }

    UVO uvo = (UVO)session.getAttribute("UVO");

    if (uvo == null) {

    uvo = new UVO();

    session.setAttribute("UVO", uvo);

    }

    model.addAttribute("list", goodsService.searchGoodsListByPriceDesc(goodsForm));

    model.addAttribute("orderTypeId", 4);

    CartForm cartForm = new CartForm();

    cartForm.setGuestId(uvo.getGuestId());

    model.addAttribute("cartList", cartService.searchCartList(cartForm));

    if(device.isNormal()) {

    return "shop/list";

    } else {

    return "mobile/list";

    }

    }

3,service

public List<GoodsForm> searchGoodsListByPriceDesc(GoodsForm frm) {


List<GoodsForm> result = queryDao.executeForObjectList("Goods.selectGoodsListByPriceDesc", frm);

return result;

}

public List<GoodsForm> searchGoodsListByPrice(GoodsForm frm) {


List<GoodsForm> result = queryDao.executeForObjectList("Goods.selectGoodsListByPrice", frm);

return result;

}

public List<GoodsForm> searchGoodsListByPopularDesc(GoodsForm frm) {


List<GoodsForm> result = queryDao.executeForObjectList("Goods.selectGoodsListByPopularDesc", frm);

return result;

}

public List<GoodsForm> searchGoodsListByPopular(GoodsForm frm) {


List<GoodsForm> result = queryDao.executeForObjectList("Goods.selectGoodsListByPopular", frm);

return result;

}

4,SQL

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE sqlMap

            PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN"

            "http://ibatis.apache.org/dtd/sql-map-2.dtd">

<!-- SqlMap定義 -->

<sqlMap namespace="Goods">

<select id="selectGoodsListByPopularDesc"

parameterClass="cn.agriculture.web.form.GoodsForm"

resultClass="cn.agriculture.web.form.GoodsForm">

SELECT commodity.commodity_id as commodityId,

commodity.type as type,

commodity_type.commodity_type_id as commodityTypeId,

commodity_type.commodity_type_name as commodityTypeName,

supplier.supplier_name as supplierName,

brand.brand_name as brandName,

commodity.commodity_name as commodityName,

commodity.weight as weight,

commodity.is_gift as isGift,

commodity.specifications as specifications,

commodity.unit as unit,

commodity.benchmark_price as benchmarkPrice,

commodity.guide_price as guidePrice,

commodity.retail_price as retailPrice,

commodity.competition_level as competitionLevel,

commodity.note as note,

commodity.update_time as updateTime,

commodity.update_user as updateUser,

commodity.picture_id as pictureId,

stock.stock as stock

FROM commodity, supplier, brand, stock,commodity_type

WHERE commodity.commodity_id = stock.commodity_id

AND commodity.supplier_id = supplier.supplier_id

AND commodity.brand_id = brand.brand_id

AND commodity.type = commodity_type.commodity_type_id

        <isNotEmpty  property="commodityTypeId">

AND commodity_type.commodity_type_id=#commodityTypeId#

</isNotEmpty>

<isNotEmpty   property="commodityName">

AND commodity.commodity_name LIKE '%$commodityName$%'

</isNotEmpty>

ORDER BY cast(stock.stock as signed) DESC

</select>

<select id="selectGoodsListByPopular"

parameterClass="cn.agriculture.web.form.GoodsForm"

resultClass="cn.agriculture.web.form.GoodsForm">

SELECT commodity.commodity_id as commodityId,

commodity.type as type,

commodity_type.commodity_type_id as commodityTypeId,

commodity_type.commodity_type_name as commodityTypeName,

supplier.supplier_name as supplierName,

brand.brand_name as brandName,

commodity.commodity_name as commodityName,

commodity.weight as weight,

commodity.is_gift as isGift,

commodity.specifications as specifications,

commodity.unit as unit,

commodity.benchmark_price as benchmarkPrice,

commodity.guide_price as guidePrice,

commodity.retail_price as retailPrice,

commodity.competition_level as competitionLevel,

commodity.note as note,

commodity.update_time as updateTime,

commodity.update_user as updateUser,

commodity.picture_id as pictureId,

stock.stock as stock

FROM commodity, supplier, brand, stock,commodity_type

WHERE commodity.commodity_id = stock.commodity_id

AND commodity.supplier_id = supplier.supplier_id

AND commodity.brand_id = brand.brand_id

AND commodity.type = commodity_type.commodity_type_id

   <isNotEmpty  property="commodityTypeId">

AND commodity_type.commodity_type_id=#commodityTypeId#

</isNotEmpty>

<isNotEmpty   property="commodityName">

AND commodity.commodity_name LIKE '%$commodityName$%'

</isNotEmpty>

ORDER BY cast(stock.stock as signed) 

</select>

<select id="selectGoodsListByPriceDesc"

parameterClass="cn.agriculture.web.form.GoodsForm"

resultClass="cn.agriculture.web.form.GoodsForm">

SELECT commodity.commodity_id as commodityId,

commodity.type as type,

commodity_type.commodity_type_id as commodityTypeId,

commodity_type.commodity_type_name as commodityTypeName,

supplier.supplier_name as supplierName,

brand.brand_name as brandName,

commodity.commodity_name as commodityName,

commodity.weight as weight,

commodity.is_gift as isGift,

commodity.specifications as specifications,

commodity.unit as unit,

commodity.benchmark_price as benchmarkPrice,

commodity.guide_price as guidePrice,

commodity.retail_price as retailPrice,

commodity.competition_level as competitionLevel,

commodity.note as note,

commodity.update_time as updateTime,

commodity.update_user as updateUser,

commodity.picture_id as pictureId,

stock.stock as stock

FROM commodity, supplier, brand, stock,commodity_type

WHERE commodity.commodity_id = stock.commodity_id

AND commodity.supplier_id = supplier.supplier_id

AND commodity.brand_id = brand.brand_id

AND commodity.type = commodity_type.commodity_type_id

<isNotEmpty  property="commodityTypeId">

AND commodity_type.commodity_type_id=#commodityTypeId#

</isNotEmpty>

<isNotEmpty   property="commodityName">

AND commodity.commodity_name LIKE '%$commodityName$%'

</isNotEmpty>

ORDER BY cast(commodity.retail_price as signed) DESC

</select>

<select id="selectGoodsListByPrice"

parameterClass="cn.agriculture.web.form.GoodsForm"

resultClass="cn.agriculture.web.form.GoodsForm">

SELECT commodity.commodity_id as commodityId,

commodity.type as type,

commodity_type.commodity_type_id as commodityTypeId,

commodity_type.commodity_type_name as commodityTypeName,

supplier.supplier_name as supplierName,

brand.brand_name as brandName,

commodity.commodity_name as commodityName,

commodity.weight as weight,

commodity.is_gift as isGift,

commodity.specifications as specifications,

commodity.unit as unit,

commodity.benchmark_price as benchmarkPrice,

commodity.guide_price as guidePrice,

commodity.retail_price as retailPrice,

commodity.competition_level as competitionLevel,

commodity.note as note,

commodity.update_time as updateTime,

commodity.update_user as updateUser,

commodity.picture_id as pictureId,

stock.stock as stock

FROM commodity, supplier, brand, stock,commodity_type

WHERE commodity.commodity_id = stock.commodity_id

AND commodity.supplier_id = supplier.supplier_id

AND commodity.brand_id = brand.brand_id

AND commodity.type = commodity_type.commodity_type_id

<isNotEmpty  property="commodityTypeId">

AND commodity_type.commodity_type_id=#commodityTypeId#

</isNotEmpty>

<isNotEmpty   property="commodityName">

AND commodity.commodity_name LIKE '%$commodityName$%'

</isNotEmpty>

ORDER BY cast(commodity.retail_price as signed)

 

</select>

相關文章
相關標籤/搜索