匿名登录

details.html

	<form  name="goodsForm" action="submit" th:object="${goodsForm}" method="post">
					<div class="col-sm-6">
					<input type="hidden" name="commodityId" th:value="${goodsForm.commodityId}"/>
						<h4 class="yh detailsT"><span th:text="${goodsForm.commodityName}">裕道府东北有机小米食用米 粗粮黄小米 五谷杂粮月子米</span></h4>
						<dl class="dl-horizontal detailsInfo cf">
					        <dt>零售价:</dt>
					        <dd class="price yh"><i>¥</i><span name="retailPrice" th:text="${goodsForm.retailPrice}">128</span></dd>
					        <dt>运 费 :</dt>
					        <dd>8元</dd>
					        <dt>品  牌:</dt>
					        <dd><span th:text="${goodsForm.brandName}">日思</span></dd>
					        <dt>经销商:</dt>
					        <dd><span th:text="${goodsForm.supplierName}">天津日思优质小站稻开发公司</span></dd>
					        <dt>规  格:</dt>
					        <dd>每<span th:text="${#strings.concat(goodsForm.unit).concat(goodsForm.specifications)}">袋5kg</span></dd>
					        <dt>库  存:</dt>
					        <dd><span th:text="${goodsForm.stock}">99</span></dd>
					        <dt>数  量:</dt>
					        <dd style="height:32px;">
					        	<div class="chooseAmount mt5">
					        		<a onclick="subNum();" href="javascript:void(0)"></a>
					        		<input type="text" name="count" id="count" class="fl inp-t" value="1"/>
					        		<a onclick="addNum();"  href="javascript:void(0)"></a>
					        	</div>
					        </dd>
					    </dl>
					    <p class="mt20"><button class="btnBlue yh " name="AlipaySubmit" >立即购买</button><button class="btnYellow yh" name="addCart" >加入购物车</button></p>
					</div>
					</form>

DetailsController.java

@RequestMapping(value = "submit", method = RequestMethod.POST,params="AlipaySubmit")
	public String executeAlipaySubmit(Model model, HttpSession session, GoodsForm goodsForm, CartForm cartForm, Device device) throws SQLException {
		UVO uvo=(UVO) session.getAttribute("UVO");
		//匿名购买
		if(uvo == null || StringUtils.isEmpty(uvo.getGuestId())){
			GoodsForm goodsForm1=new GoodsForm();
			List<GoodsForm> commodityType = goodsService.getType();
	    	goodsForm1.setCommodityTypeId(commodityType.get(0).getCommodityTypeId());
	    	goodsForm1.setCommodityId(goodsForm.getCommodityId());
	    	model.addAttribute("goodsForm", goodsForm1);
	    	model.addAttribute("commodityType", commodityType);    	
	    	cartForm.setGuestId(uvo.getGuestId());	
	    	//设置updateTime
			Date date = new Date();
			SimpleDateFormat dateformat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
			cartForm.setUpdateTime(dateformat.format(date));
			//设置updateUser
			
			AlipayForm alipayForm=new AlipayForm();
	      	alipayForm=cartService.searchAlipayImmediately(cartForm);
	      	cartForm.setUpdateUser(uvo.getGuestName());
	      	if (alipayForm == null) {
		    	model.addAttribute("commodityType", commodityType);
				model.addAttribute("goodsForm", goodsService.searchGoods(goodsForm1));
				model.addAttribute("cartList", cartService.searchCartList(cartForm));
				model.addAttribute("message", "库存不够!");
				model.addAttribute("orderlist", goodsService.searchGoodsListOrder());
				if(device.isNormal()) {
		    		return "shop/goods/details";
		    	} else {
		    		return "mobile/goods/details";
		    	}
			}
	    	model.addAttribute("alipayForm",alipayForm);
	    	model.addAttribute("cartList", cartService.searchCartList(cartForm));	
	    	return "shop/alipay/guestAlipayConfirm";
		}
			
		
		//非匿名购买	
		GoodsForm goodsForm1=new GoodsForm();
		List<GoodsForm> commodityType = goodsService.getType();
    	goodsForm1.setCommodityTypeId(commodityType.get(0).getCommodityTypeId());
    	goodsForm1.setCommodityId(goodsForm.getCommodityId());
    	model.addAttribute("goodsForm", goodsForm1);
    	model.addAttribute("commodityType", commodityType);    	
    	cartForm.setGuestId(uvo.getGuestId());

    	
    	
    	//设置updateTime
		Date date = new Date();
		SimpleDateFormat dateformat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
		cartForm.setUpdateTime(dateformat.format(date));
		//设置updateUser
		cartForm.setUpdateUser(uvo.getGuestName());
    	ReceiveForm receiveForm=new ReceiveForm();
    	receiveForm.setGuestId(uvo.getGuestId());
    	GuestForm guestForm=new GuestForm();
    	guestForm.setGuestId(uvo.getGuestId());
   	 String addressDefault=guestService.searchAddressId(guestForm).getAddressId();
   	 model.addAttribute("addressDefault", addressDefault);
    	List<ReceiveForm> list=receiveservice.searchlist(receiveForm);
      	model.addAttribute("list", list);
//    	model.addAttribute("cartList", cartService.searchCartList(cartForm));
      	AlipayForm alipayForm=new AlipayForm();
      	alipayForm=cartService.searchAlipayImmediately(cartForm);
      	model.addAttribute("alipayForm",alipayForm);
		if (alipayForm == null) {
	    	model.addAttribute("commodityType", commodityType);
			model.addAttribute("goodsForm", goodsService.searchGoods(goodsForm1));
			model.addAttribute("cartList", cartService.searchCartList(cartForm));
			model.addAttribute("message", "库存不够!");
			model.addAttribute("orderlist", goodsService.searchGoodsListOrder());
			if(device.isNormal()) {
	    		return "shop/goods/details";
	    	} else {
	    		return "mobile/goods/details";
	    	}
		}
    	model.addAttribute("cartList", cartService.searchCartList(cartForm));		
    	return "shop/cart/cart-2";
	}
    @RequestMapping(value = "submit", method = RequestMethod.POST,params="addCart")
    public String executeAddCart(Model model, HttpSession session, CartForm cartForm, Device device) throws SQLException {
    	log.info("追加购物车");
    	GoodsForm goodsForm = new GoodsForm();
		goodsForm.setCommodityId(cartForm.getCommodityId());
//		goodsForm.setType("粮食");
		List<GoodsForm> commodityType = goodsService.getType();
    	goodsForm.setCommodityTypeId(commodityType.get(0).getCommodityTypeId());
    	model.addAttribute("commodityType", commodityType);
		model.addAttribute("goodsForm", goodsService.searchGoods(goodsForm));
    	UVO uvo = (UVO)session.getAttribute("UVO");
    	
    	if (uvo == null || StringUtils.isEmpty(uvo.getGuestId()) || uvo.getGuestId().length() > 4) {
    		if (uvo == null || StringUtils.isEmpty(uvo.getGuestId()) || "Guest".equals(uvo.getGuestId().substring(0, 5))) {
    			uvo = new UVO();
    			Date date = new Date();
        		SimpleDateFormat dateformat = new SimpleDateFormat("yyyyMMddHHmmss");
        		uvo.setUserId("Guest" + dateformat.format(date));
        		uvo.setGuestId("Guest" + dateformat.format(date));
        		uvo.setUserName("来宾" + dateformat.format(date));
        		log.info("匿名购买商品销售页面初始化。");
        		AlipayForm alipayForm = new AlipayForm();
        		cartForm.setGuestId(uvo.getGuestId());
        		alipayForm = cartService.searchAlipay(cartForm);
        		List<CartForm> cartList = new ArrayList<>();
        		model.addAttribute("cartList", cartList);
        		if (alipayForm == null) {
        			model.addAttribute("message", "库存不够!");
        			if(device.isNormal()) {
        	    		return "shop/goods/details";
        	    	} else {
        	    		return "mobile/goods/details";
        	    	}
        		}
        		model.addAttribute("alipayForm", alipayForm);
        		if(device.isNormal()) {
        			return "shop/alipay/guestAlipayConfirm";
        		} else {
        			return "mobile/alipay/guestAlipayConfirm";
        		}
    		}
    	}
    	
    	cartForm.setUpdateUser(uvo.getGuestName());
		Date date = new Date();
		SimpleDateFormat dateformat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
		cartForm.setUpdateTime(dateformat.format(date));
		cartForm.setGuestId(uvo.getGuestId());
		AlipayForm alipayForm = new AlipayForm();
		alipayForm = cartService.searchAlipay(cartForm);
		if (alipayForm == null) {
			model.addAttribute("cartList", cartService.searchCartList(cartForm));
			model.addAttribute("message", "库存不够!");
			model.addAttribute("orderlist", goodsService.searchGoodsListOrder());
			if(device.isNormal()) {
	    		return "shop/goods/details";
	    	} else {
	    		return "mobile/goods/details";
	    	}
		}
    
    	boolean result = cartService.addCart(cartForm);
    	if (!result) {
    		throw new SQLException("追加购物车失败!");
    	}
    	List<CartForm> cartFormList=cartService.searchCartList(cartForm);
    	for(int i=0;i<cartFormList.size();i++){
    		BigDecimal smallSumPrice=new BigDecimal(Double.toString(Double.valueOf(cartFormList.get(i).getCount())*Double.valueOf(cartFormList.get(i).getRetailPrice())));	
    		cartFormList.get(i).setSmallSumPrice(String.valueOf(smallSumPrice.setScale(2, BigDecimal.ROUND_HALF_UP)));
    	}
    	model.addAttribute("cartList", cartFormList);
    	model.addAttribute("list", cartService.searchAlipayHistoryList(cartForm));
    	if(device.isNormal()) {
    		return "shop/cart/cart-1";
    	} else {
    		return "mobile/cart/cart-1";
    	}
    }
}

GoodsService.java

public GoodsForm searchGoods(GoodsForm frm) {
		GoodsForm result = queryDao.executeForObject("Goods.selectGoods", frm, GoodsForm.class);
		return result;
	}
	
	
public List<GoodsForm> searchGoodsListOrder() {
		List<GoodsForm> result = queryDao.executeForObjectList("Goods.selectGoodsListOder", null,0,4);
		return result;
	}	

GoodsSqlMap.xml

<select id="selectGoods"
		parameterClass="cn.agriculture.web.form.GoodsForm"
		resultClass="cn.agriculture.web.form.GoodsForm">
		SELECT commodity.commodity_id as commodityId,
			commodity.type as commodityTypeId,
			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,
			commodity.picture1_id as pictureId1,
			commodity.picture2_id as pictureId2,
			commodity.picture3_id as pictureId3,
			commodity.picture4_id as pictureId4,
			commodity.picture5_id as pictureId5,
			commodity.picture6_id as pictureId6,
			stock.stock as stock,
			commodity_type.commodity_type_id as commodityTypeId,
			commodity_type.commodity_type_name as commodityTypeName
		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
		AND commodity.commodity_id = #commodityId#
	</select>
<select id="selectGoodsListOder"
		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
		ORDER BY cast(stock.stock as signed) DESC
	</select>

CartService.java

public List<CartForm> searchCartList(CartForm frm) {
		frm.setStatus("未付款");
		List<CartForm> result = queryDao.executeForObjectList("Cart.selectCartList", frm);
		return result;
	}
	

CartSqlMap.xml

<select id="selectCartList" parameterClass="cn.agriculture.web.form.CartForm"
		resultClass="cn.agriculture.web.form.CartForm">
		SELECT cart.cart_id as cartId,
			cart.guest_id as guestId,
			cart.count as count,
			commodity.commodity_id as commodityId,
			commodity.type as type,
			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,
			cart.update_time as updateTime,
			cart.update_user as updateUser,
			commodity.picture_id as pictureId
		FROM cart, commodity, supplier, brand
		WHERE cart.commodity_id = commodity.commodity_id
		AND commodity.supplier_id = supplier.supplier_id
		AND commodity.brand_id = brand.brand_id
		AND cart.status = #status#
		AND cart.guest_id = #guestId#
	</select>


你可能感兴趣的:(匿名登录)