@RequestMapping("repoType.action") public String repoType(String repotype, String productId, HttpServletRequest request) { String percent = request.getParameter("percent"); List<Product_ext_shop> productsList = ext_shopService.getShopProductByMethod(5, productId); Product_ext_shop ext_shop = null; Double price = null; if (productsList != null && productsList.size() > 0) { ext_shop = productsList.get(0); if (ext_shop.getPromoteflag() == 1) { price = ext_shop.getPromotePrice(); } else { price = ext_shop.getOriginalPrice(); } } else { return "redirect:/"; } request.setAttribute("shop", ext_shop); request.setAttribute("percent", percent); request.setAttribute("productId", productId); request.setAttribute("price", (price * Double.parseDouble(percent) / 100)); request.setAttribute("sendaddr", Constants.SENDADDR); request.setAttribute("senduser", Constants.SENDUSER); request.setAttribute("senduserphone", Constants.SENDUSERPHONE); request.setAttribute("postcode", Constants.POSTCODE); if ("discount".equals(repotype)) { return "web/repoDiscount"; } return "web/repoDepreciation"; }
@Override public void addOrder( List<ShopTemp> shopsList, short orderType, String userId, String userAddressId, Integer payofflineflag, HttpServletRequest request) { Order_list order_list = new Order_list(); order_list.setLastUpdateTime(new Date()); Order_detail order_detail = null; switch (orderType) { case 1: String providerId = ""; for (ShopTemp shopTemp : shopsList) { productService.updateStockNumber( shopTemp.getProduct().getProductId(), 0 - shopTemp.getCount()); if (shopTemp.getProviderId().equals(providerId)) { // 同一订单 order_list.setTotalamt(order_list.getTotalamt() + shopTemp.getTotalamt()); order_detail = new Order_detail(); order_detail.setOrderId(order_list.getOrderId()); order_detail.setTotalamt(shopTemp.getTotalamt()); order_detail.setPrice(shopTemp.getPrice()); order_detail.setProductId(shopTemp.getProduct().getProductId()); order_detail.setOrderType(orderType); order_detail.setQuantity((short) shopTemp.getCount()); order_list.setPayofflineflag(payofflineflag.shortValue()); order_detail.setValidflag((short) 1); detailDao.insert(order_detail); commonDao.update(order_list); } else { providerId = shopTemp.getProviderId(); // 新订单 9999999999 order_list = new Order_list(); order_list.setStatus("01"); order_list.setOrderType(orderType); order_list.setUserId(userId); order_list.setUserAddressId(userAddressId); order_list.setProviderid(shopTemp.getProviderId()); order_list.setTotalamt(shopTemp.getTotalamt()); order_list.setOrderId( UtilDate.getNowDateNo_() + "0" + orderType + shopTemp.getProviderId() + (new Random().nextInt(899999) + 100000)); // TBD order_list.setCreateTime(new Date()); order_list.setRequireinvoice(Short.parseShort(request.getParameter("requireinvoice"))); order_list.setInvoicetype(Short.parseShort(request.getParameter("invoicetype"))); order_list.setInvoicetitle(request.getParameter("invoicetitle")); order_list.setInvoicecontent(request.getParameter("invoicecontent")); order_list.setPaymentway(request.getParameter("paymentway")); order_list.setInvoiceprinted((short) 0); order_list.setRemark(request.getParameter("remark")); order_list.setLastUpdateTime(new Date()); order_list.setPayofflineflag(payofflineflag.shortValue()); order_list.setValidflag((short) 1); listDao.insert(order_list); order_detail = new Order_detail(); order_detail.setOrderId(order_list.getOrderId()); order_detail.setTotalamt(shopTemp.getTotalamt()); order_detail.setPrice(shopTemp.getPrice()); order_detail.setProductId(shopTemp.getProduct().getProductId()); order_detail.setOrderType(orderType); order_detail.setQuantity((short) shopTemp.getCount()); order_detail.setValidflag((short) 1); detailDao.insert(order_detail); } } break; case 2: String count = request.getParameter("count"); String groupbuyid = request.getParameter("groupbuyid"); Product_ext_groupBuy groupbuy = null; groupBuyService.updateStockNumber(groupbuyid, 0 - Integer.parseInt(count)); groupbuy = groupBuyService.getgroupBuyProductByMethod(3, groupbuyid, "1").get(0); order_list.setStatus("01"); order_list.setOrderType(orderType); order_list.setUserId(userId); order_list.setUserAddressId(userAddressId); order_list.setProviderid(groupbuy.getProduct().getProviderId()); order_list.setTotalamt(groupbuy.getGroupBuyPrice() * Integer.parseInt(count)); order_list.setOrderId( UtilDate.getNowDateNo_() + "0" + orderType + groupbuy.getProduct().getProviderId() + (new Random().nextInt(899999) + 100000)); order_list.setCreateTime(new Date()); Short requireinvoice = Short.parseShort(request.getParameter("requireinvoice")); order_list.setRequireinvoice(requireinvoice); if (requireinvoice.equals(1)) { order_list.setInvoicetype(Short.parseShort(request.getParameter("invoicetype"))); order_list.setInvoicetitle(request.getParameter("invoicetitle")); order_list.setInvoicecontent(request.getParameter("invoicecontent")); } order_list.setPaymentway(request.getParameter("paymentway")); order_list.setInvoiceprinted((short) 0); order_list.setPayofflineflag(payofflineflag.shortValue()); order_list.setValidflag((short) 1); order_list.setRemark(request.getParameter("remark")); commonDao.insert(order_list); order_detail = new Order_detail(); order_detail.setOrderId(order_list.getOrderId()); order_detail.setPrice(groupbuy.getGroupBuyPrice()); order_detail.setProductId(groupbuy.getGroupbuyid()); order_detail.setOrderType(orderType); order_detail.setQuantity(Short.parseShort(count)); order_detail.setTotalamt(groupbuy.getGroupBuyPrice() * Integer.parseInt(count)); order_detail.setValidflag((short) 1); detailDao.insert(order_detail); break; case 3: String bigdealcount = request.getParameter("count"); String bigdealid = request.getParameter("bigdealid"); Product_ext_bigDeal bigDeal = bigDealService.getbigDealProductByMethod(3, bigdealid, "1").get(0); order_list.setStatus("08"); order_list.setOrderType(orderType); order_list.setProviderid(bigDeal.getProduct().getProviderId()); order_list.setTotalamt(bigDeal.getReferencePrice() * Integer.parseInt(bigdealcount)); order_list.setUserId(userId); order_list.setOrderId( UtilDate.getNowDateNo_() + "0" + orderType + bigDeal.getProduct().getProviderId() + (new Random().nextInt(899999) + 100000)); order_list.setCreateTime(new Date()); order_list.setInvoiceprinted((short) 0); order_list.setRemark(request.getParameter("remark")); order_list.setPayofflineflag((short) 1); order_list.setValidflag((short) 1); commonDao.insert(order_list); order_detail = new Order_detail(); order_detail.setOrderId(order_list.getOrderId()); order_detail.setPrice(bigDeal.getReferencePrice()); order_detail.setProductId(bigDeal.getBigdealId()); order_detail.setOrderType(orderType); order_detail.setQuantity(Short.parseShort(bigdealcount)); order_detail.setTotalamt(bigDeal.getReferencePrice() * Integer.parseInt(bigdealcount)); order_detail.setValidflag((short) 1); detailDao.insert(order_detail); break; case 4: String productCount = request.getParameter("count"); String productId = request.getParameter("productId"); Product_ext_shop product_ext_shop1 = null; product_ext_shop1 = ext_shopService.getShopProductByMethod(5, productId).get(0); order_list.setStatus("01"); order_list.setOrderType((short) 1); order_list.setUserId(userId); order_list.setUserAddressId(userAddressId); order_list.setProviderid(product_ext_shop1.getProduct().getProviderId()); if (product_ext_shop1.getPromoteflag() == 1) { order_list.setTotalamt( product_ext_shop1.getPromotePrice() * Integer.parseInt(productCount)); } else { order_list.setTotalamt( product_ext_shop1.getOriginalPrice() * Integer.parseInt(productCount)); } order_list.setOrderId( UtilDate.getNowDateNo_() + "0" + orderType + product_ext_shop1.getProduct().getProviderId() + (new Random().nextInt(899999) + 100000)); order_list.setCreateTime(new Date()); order_list.setRequireinvoice(Short.parseShort(request.getParameter("requireinvoice"))); order_list.setInvoicetype(Short.parseShort(request.getParameter("invoicetype"))); order_list.setInvoicetitle(request.getParameter("invoicetitle")); order_list.setInvoicecontent(request.getParameter("invoicecontent")); order_list.setPaymentway(request.getParameter("paymentway")); order_list.setInvoiceprinted((short) 0); order_list.setPayofflineflag(payofflineflag.shortValue()); order_list.setValidflag((short) 1); order_list.setRemark(request.getParameter("remark")); commonDao.insert(order_list); order_detail = new Order_detail(); order_detail.setOrderId(order_list.getOrderId()); if (product_ext_shop1.getPromoteflag() == 1) { order_detail.setPrice(product_ext_shop1.getPromotePrice()); } else { order_detail.setPrice(product_ext_shop1.getOriginalPrice()); } order_detail.setProductId(product_ext_shop1.getProductId()); order_detail.setOrderType(orderType); order_detail.setQuantity(Short.parseShort(productCount)); if (product_ext_shop1.getPromoteflag() == 1) { order_detail.setTotalamt( product_ext_shop1.getPromotePrice() * Integer.parseInt(productCount)); } else { order_detail.setTotalamt( product_ext_shop1.getOriginalPrice() * Integer.parseInt(productCount)); } order_detail.setValidflag((short) 1); detailDao.insert(order_detail); break; case 5: String providerProductCount = request.getParameter("count"); String providerProductProductId = request.getParameter("productId"); Product product = null; product = productService.getProductListByMethod(2, null, providerProductProductId).get(0); order_list.setStatus("01"); order_list.setOrderType((short) 1); order_list.setUserId(userId); order_list.setUserAddressId(userAddressId); order_list.setProviderid(product.getProviderId()); order_list.setTotalamt(product.getShopPrice()); order_list.setOrderId( UtilDate.getNowDateNo_() + "0" + orderType + product.getProviderId() + (new Random().nextInt(899999) + 100000)); order_list.setCreateTime(new Date()); order_list.setRequireinvoice(Short.parseShort(request.getParameter("requireinvoice"))); order_list.setInvoicetype(Short.parseShort(request.getParameter("invoicetype"))); order_list.setInvoicetitle(request.getParameter("invoicetitle")); order_list.setInvoicecontent(request.getParameter("invoicecontent")); order_list.setPaymentway(request.getParameter("paymentway")); order_list.setInvoiceprinted((short) 0); order_list.setPayofflineflag(payofflineflag.shortValue()); order_list.setValidflag((short) 1); order_list.setRemark(request.getParameter("remark")); commonDao.insert(order_list); order_detail = new Order_detail(); order_detail.setOrderId(order_list.getOrderId()); order_detail.setPrice(product.getShopPrice()); order_detail.setProductId(product.getProductId()); order_detail.setOrderType(orderType); order_detail.setQuantity(Short.parseShort(providerProductCount)); order_detail.setTotalamt(product.getShopPrice() * Integer.parseInt(providerProductCount)); order_detail.setValidflag((short) 1); detailDao.insert(order_detail); break; default: break; } }