基于javaweb+mysql的springboot化妆品商城系统(java+springboot+ssm+mysql+jsp+maven)
私信源码获取及调试交流
运行环境
Java≥8、MySQL≥5.7
开发工具
eclipse/idea/myeclipse/sts等均可配置运行
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
基于javaweb+mysql的SpringBoot化妆品商城系统(java+springboot+ssm+mysql+jsp+maven)
一、项目简述
本系统主要实现的功能有: 网上商城系统,前台+后台管理,用户注册,登录,上架展示,分组展示,搜索,收货地址管理,购物车管理,添加,购买,个人信息修改。订单查询等等,后台商品管理,分类管理,库存管理,订单管理,评论管理,用户管理,信息修改等等。
二、项目运行
环境配置: Jdk1.8 + Tomcat8.5 + mysql + Eclispe (IntelliJ IDEA,Eclispe,MyEclispe,Sts 都支持)
项目技术: Springboot+ SpringMVC + MyBatis + Jsp + Html+ JavaScript + JQuery + Ajax + maven等等。
} else {
for (ProductOrderItem productOrderItem : order.getProductOrderItemList()) {
Product product = productService.get(productOrderItem.getProductOrderItem_product().getProduct_id());
logger.info("更新产品销量信息");
Product updateProduct = new Product()
.setProduct_id(product.getProduct_id())
.setProduct_sale_count(product.getProduct_sale_count() + productOrderItem.getProductOrderItem_number());
logger.info("更新产品信息,产品ID值为:{}", product.getProduct_id());
boolean yn = productService.update(updateProduct);
if (!yn) {
logger.info("产品销量信息更新失败!事务回滚");
object.put("success", false);
throw new RuntimeException();
}
logger.info("产品销量信息更新成功!");
orderTotalPrice += productOrderItem.getProductOrderItem_price();
}
}
logger.info("总共支付金额为:{}元", orderTotalPrice);
logger.info("更新订单信息");
ProductOrder productOrder = new ProductOrder()
.setProductOrder_id(order.getProductOrder_id())
.setProductOrder_pay_date(new Date())
.setProductOrder_status((byte) 1);
boolean yn = productOrderService.update(productOrder);
if (yn) {
object.put("success", true);
object.put("url", "/order/pay/success/" + order_code);
} else {
object.put("success", false);
object.put("url", "/order/0/10");
}
return object.toJSONString();
}
//更新订单信息为已发货,待确认-ajax
@RequestMapping(value = "order/delivery/{order_code}", method = RequestMethod.GET)
public String orderDelivery(HttpSession session, @PathVariable("order_code") String order_code) {
logger.info("检查用户是否登录");
Object userId = checkUser(session);
if (userId == null) {
return "redirect:/order/0/10";
}
logger.info("------验证订单信息------");
logger.info("查询订单是否存在");
ProductOrder order = productOrderService.getByCode(order_code);
if (order == null) {
logger.warn("订单不存在,返回订单列表页");
return "redirect:/order/0/10";
}
logger.info("验证订单状态");
logger.info("共有{}条产品属性数据", propertyValueList.size());
yn = propertyValueService.addList(propertyValueList);
if (yn) {
logger.info("产品属性添加成功!");
} else {
logger.warn("产品属性添加失败!事务回滚");
jsonObject.put("success", false);
throw new RuntimeException();
}
}
if (productSingleImageList != null && productSingleImageList.length > 0) {
logger.info("整合产品子信息-产品预览图片");
List<ProductImage> productImageList = new ArrayList<>(5);
for (String imageName : productSingleImageList) {
productImageList.add(new ProductImage()
.setProductImage_type((byte) 0)
.setProductImage_src(imageName.substring(imageName.lastIndexOf("/") + 1))
.setProductImage_product(new Product().setProduct_id(product_id))
);
}
logger.info("共有{}条产品预览图片数据", productImageList.size());
yn = productImageService.addList(productImageList);
if (yn) {
logger.info("产品预览图片添加成功!");
} else {
logger.warn("产品预览图片添加失败!事务回滚");
jsonObject.put("success", false);
throw new RuntimeException();
}
}
if (productDetailsImageList != null && productDetailsImageList.length > 0) {
logger.info("整合产品子信息-产品详情图片");
List<ProductImage> productImageList = new ArrayList<>(5);
for (String imageName : productDetailsImageList) {
productImageList.add(new ProductImage()
.setProductImage_type((byte) 1)
.setProductImage_src(imageName.substring(imageName.lastIndexOf("/") + 1))
.setProductImage_product(new Product().setProduct_id(product_id))
);
}
logger.info("共有{}条产品详情图片数据", productImageList.size());
yn = productImageService.addList(productImageList);
if (yn) {
logger.info("产品详情图片添加成功!");
} else {
logger.warn("产品详情图片添加失败!事务回滚");
jsonObject.put("success", false);
throw new RuntimeException();
}
}
/**
* 主页
*/
@Controller
public class ForeHomeController extends BaseController {
@Resource(name = "userService")
private UserService userService;
@Resource(name="categoryService")
private CategoryService categoryService;
@Resource(name="productService")
private ProductService productService;
@Resource(name="productImageService")
private ProductImageService productImageService;
//转到前台天猫-主页
@RequestMapping(value = "/", method = RequestMethod.GET)
public String goToPage(HttpSession session, Map<String, Object> map) {
logger.info("检查用户是否登录");
Object userId = checkUser(session);
if (userId != null) {
logger.info("获取用户信息");
User user = userService.get(Integer.parseInt(userId.toString()));
@Resource(name = "propertyService")
private PropertyService propertyService;
@Resource(name = "propertyValueService")
private PropertyValueService propertyValueService;
@Resource(name = "lastIDService")
private LastIDService lastIDService;
//转到后台管理-产品页-ajax
@RequestMapping(value = "admin/product",method = RequestMethod.GET)
public String goToPage(HttpSession session, Map<String, Object> map) {
logger.info("获取产品分类列表");
List<Category> categoryList = categoryService.getList(null, null);
map.put("categoryList", categoryList);
logger.info("获取前10条产品列表");
PageUtil pageUtil = new PageUtil(0, 10);
List<Product> productList = productService.getList(null, null, null, pageUtil);
map.put("productList", productList);
logger.info("获取产品总数量");
Integer productCount = productService.getTotal(null, null);
map.put("productCount", productCount);
logger.info("获取分页信息");
pageUtil.setTotal(productCount);
map.put("pageUtil", pageUtil);
logger.info("转到后台管理-产品页-ajax方式");
return "admin/productManagePage";
}
//转到后台管理-产品详情页-ajax
@RequestMapping(value="admin/product/{pid}",method = RequestMethod.GET)
public String goToDetailsPage(HttpSession session, Map<String, Object> map, @PathVariable Integer pid/* 产品ID */) {
logger.info("获取product_id为{}的产品信息",pid);
Product product = productService.get(pid);
Integer product_id =product.getProduct_id();
logger.info("获取产品预览图片信息");
List<ProductImage> singleProductImageList = productImageService.getList(product_id, (byte) 0, null);
product.setSingleProductImageList(singleProductImageList);
logger.info("获取产品详情图片信息");
List<ProductImage> detailsProductImageList = productImageService.getList(product_id, (byte) 1, null);
product.setDetailProductImageList(detailsProductImageList);
map.put("product",product);
logger.info("获取产品详情-属性值信息");
List<PropertyValue> propertyValueList = propertyValueService.getList(
new PropertyValue().setPropertyValue_product(product),null
private PropertyService propertyService;
@Resource(name = "propertyValueService")
private PropertyValueService propertyValueService;
@Resource(name = "lastIDService")
private LastIDService lastIDService;
//转到后台管理-产品页-ajax
@RequestMapping(value = "admin/product",method = RequestMethod.GET)
public String goToPage(HttpSession session, Map<String, Object> map) {
logger.info("获取产品分类列表");
List<Category> categoryList = categoryService.getList(null, null);
map.put("categoryList", categoryList);
logger.info("获取前10条产品列表");
PageUtil pageUtil = new PageUtil(0, 10);
List<Product> productList = productService.getList(null, null, null, pageUtil);
map.put("productList", productList);
logger.info("获取产品总数量");
Integer productCount = productService.getTotal(null, null);
map.put("productCount", productCount);
logger.info("获取分页信息");
pageUtil.setTotal(productCount);
map.put("pageUtil", pageUtil);
logger.info("转到后台管理-产品页-ajax方式");
return "admin/productManagePage";
}
//转到后台管理-产品详情页-ajax
@RequestMapping(value="admin/product/{pid}",method = RequestMethod.GET)
public String goToDetailsPage(HttpSession session, Map<String, Object> map, @PathVariable Integer pid/* 产品ID */) {
logger.info("获取product_id为{}的产品信息",pid);
Product product = productService.get(pid);
Integer product_id =product.getProduct_id();
logger.info("获取产品预览图片信息");
List<ProductImage> singleProductImageList = productImageService.getList(product_id, (byte) 0, null);
product.setSingleProductImageList(singleProductImageList);
logger.info("获取产品详情图片信息");
List<ProductImage> detailsProductImageList = productImageService.getList(product_id, (byte) 1, null);
product.setDetailProductImageList(detailsProductImageList);
map.put("product",product);
logger.info("获取产品详情-属性值信息");
List<PropertyValue> propertyValueList = propertyValueService.getList(
new PropertyValue().setPropertyValue_product(product),null
);
logger.info("获取产品详情-分类信息对应的属性列表");
List<Property> propertyList = propertyService.getList(
new Property().setProperty_category(product.getProduct_category()),null
);
logger.info("属性列表和属性值列表信息合并");
for(Property property : propertyList){
for(PropertyValue propertyValue : propertyValueList){
if(property.getProperty_id().equals(propertyValue.getPropertyValue_property().getProperty_id())){
List<PropertyValue> property_value_item = new ArrayList<>(1);
property_value_item.add(propertyValue);
JSONObject orderItemMap = JSONObject.parseObject(orderItemJSON);
Set<String> orderItem_id = orderItemMap.keySet();
List<ProductOrderItem> productOrderItemList = new ArrayList<>(3);
if (orderItem_id.size() > 0) {
for (String id : orderItem_id) {
ProductOrderItem orderItem = productOrderItemService.get(Integer.valueOf(id));
if (orderItem == null || !orderItem.getProductOrderItem_user().getUser_id().equals(userId)) {
logger.warn("订单项为空或用户状态不一致!");
object.put("success", false);
object.put("url", "/cart");
return object.toJSONString();
}
Integer product_stock_count = 0;
try {
product_stock_count = this.productService.get(orderItem.getProductOrderItem_product().getProduct_id()).getProduct_stock_count();
} catch (Exception e) {
e.printStackTrace();
}
// if(product_stock_count<orderItem.getProductOrderItem_number()) {
// object.put("success", false);
// object.put("url", "/not");
// return object.toJSONString();
// }
if (orderItem.getProductOrderItem_order() != null) {
logger.warn("用户订单项不属于购物车,回到购物车页");
object.put("success", false);
object.put("url", "/cart");
return object.toJSONString();
}
boolean yn = productOrderItemService.update(new ProductOrderItem().setProductOrderItem_id(Integer.valueOf(id)).setProductOrderItem_userMessage(orderItemMap.getString(id)));
if (!yn) {
throw new RuntimeException();
}
orderItem.setProductOrderItem_product(productService.get(orderItem.getProductOrderItem_product().getProduct_id()));
productOrderItemList.add(orderItem);
}
} else {
object.put("success", false);
object.put("url", "/cart");
return object.toJSONString();
}
logger.info("将收货地址等相关信息存入Cookie中,便于下次使用");
Cookie[] cookies = new Cookie[]{
new Cookie("addressId", addressId),
new Cookie("cityAddressId", cityAddressId),
new Cookie("districtAddressId", districtAddressId),
new Cookie("order_post", URLEncoder.encode(productOrder_post, "UTF-8")),
new Cookie("order_receiver", URLEncoder.encode(productOrder_receiver, "UTF-8")),
new Cookie("order_phone", URLEncoder.encode(productOrder_mobile, "UTF-8")),
new Cookie("detailsAddress", URLEncoder.encode(productOrder_detail_address, "UTF-8"))
};
int maxAge = 60 * 60 * 24 * 365;
for(Cookie cookie : cookies){
/**
* 后台管理-订单页
*/
@Controller
public class
OrderController extends BaseController{
@Resource(name="productOrderService")
private ProductOrderService productOrderService;
@Resource(name = "addressService")
private AddressService addressService;
@Resource(name="userService")
private UserService userService;
@Resource(name = "productOrderItemService")
private ProductOrderItemService productOrderItemService;
@Resource(name = "productService")
private ProductService productService;
@Resource(name = "productImageService")
private ProductImageService productImageService;
@Resource(name = "lastIDService")
private LastIDService lastIDService;
//转到后台管理-订单页-ajax
@RequestMapping(value = "admin/order", method = RequestMethod.GET)
public String goToPage(HttpSession session, Map<String, Object> map){
logger.info("获取前10条订单列表");
PageUtil pageUtil = new PageUtil(0, 10);
List<ProductOrder> productOrderList =
productOrderService.getList(
null,
null,
new OrderUtil("productOrder_id",
true), pageUtil);
map.put("productOrderList",productOrderList);
logger.info("获取订单总数量");
logger.warn("订单项为空或用户状态不一致!");
object.put("success", false);
object.put("url", "/cart");
return object.toJSONString();
}
Integer product_stock_count = 0;
try {
product_stock_count = this.productService.get(orderItem.getProductOrderItem_product().getProduct_id()).getProduct_stock_count();
} catch (Exception e) {
e.printStackTrace();
}
// if(product_stock_count<orderItem.getProductOrderItem_number()) {
// object.put("success", false);
// object.put("url", "/not");
// return object.toJSONString();
// }
if (orderItem.getProductOrderItem_order() != null) {
logger.warn("用户订单项不属于购物车,回到购物车页");
object.put("success", false);
object.put("url", "/cart");
return object.toJSONString();
}
boolean yn = productOrderItemService.update(new ProductOrderItem().setProductOrderItem_id(Integer.valueOf(id)).setProductOrderItem_userMessage(orderItemMap.getString(id)));
if (!yn) {
throw new RuntimeException();
}
orderItem.setProductOrderItem_product(productService.get(orderItem.getProductOrderItem_product().getProduct_id()));
productOrderItemList.add(orderItem);
}
} else {
object.put("success", false);
object.put("url", "/cart");
return object.toJSONString();
}
logger.info("将收货地址等相关信息存入Cookie中,便于下次使用");
Cookie[] cookies = new Cookie[]{
new Cookie("addressId", addressId),
new Cookie("cityAddressId", cityAddressId),
new Cookie("districtAddressId", districtAddressId),
new Cookie("order_post", URLEncoder.encode(productOrder_post, "UTF-8")),
new Cookie("order_receiver", URLEncoder.encode(productOrder_receiver, "UTF-8")),
new Cookie("order_phone", URLEncoder.encode(productOrder_mobile, "UTF-8")),
new Cookie("detailsAddress", URLEncoder.encode(productOrder_detail_address, "UTF-8"))
};
int maxAge = 60 * 60 * 24 * 365;
for(Cookie cookie : cookies){
//设置过期时间为一年
cookie.setMaxAge(maxAge);
//存储Cookie
response.addCookie(cookie);
}
StringBuffer productOrder_code = new StringBuffer()
.append(new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()))
logger.info("按类型获取属性列表,类型ID:{}",property_category_id);
List<Property> propertyList = propertyService.getList(new Property().setProperty_category(category),null);
object.put("propertyList",JSONArray.parseArray(JSON.toJSONString(propertyList)));
return object.toJSONString();
}
//按ID删除产品图片并返回最新结果-ajax
@ResponseBody
@RequestMapping(value = "admin/productImage/{productImage_id}",method = RequestMethod.DELETE,produces = "application/json;charset=utf-8")
public String deleteProductImageById(@PathVariable Integer productImage_id/* 产品图片ID */){
JSONObject object = new JSONObject();
logger.info("获取productImage_id为{}的产品图片信息",productImage_id);
ProductImage productImage = productImageService.get(productImage_id);
logger.info("删除产品图片");
Boolean yn = productImageService.deleteList(new Integer[]{productImage_id});
if (yn) {
logger.info("删除图片成功!");
object.put("success", true);
} else {
logger.warn("删除图片失败!事务回滚");
object.put("success", false);
throw new RuntimeException();
}
return object.toJSONString();
}
//上传产品图片-ajax
@ResponseBody
@RequestMapping(value = "admin/uploadProductImage", method = RequestMethod.POST, produces = "application/json;charset=utf-8")
public String uploadProductImage(@RequestParam MultipartFile file, @RequestParam String imageType, HttpSession session) {
String originalFileName = file.getOriginalFilename();
logger.info("获取图片原始文件名:{}", originalFileName);
String extension = originalFileName.substring(originalFileName.lastIndexOf('.'));
String filePath;
String fileName = UUID.randomUUID() + extension;
if ("single".equals(imageType)) {
filePath = session.getServletContext().getRealPath("/") + "res/images/item/productSinglePicture/" + fileName;
} else {
filePath = session.getServletContext().getRealPath("/") + "res/images/item/productDetailsPicture/" + fileName;
}
logger.info("文件上传路径:{}", filePath);
JSONObject object = new JSONObject();
try {
logger.info("文件上传中...");
file.transferTo(new File(filePath));
logger.info("文件上传完成");
object.put("success", true);
/**
* 主页
*/
@Controller
public class ForeHomeController extends BaseController {
@Resource(name = "userService")
private UserService userService;
@Resource(name="categoryService")
private CategoryService categoryService;
@Resource(name="productService")
private ProductService productService;
@Resource(name="productImageService")
private ProductImageService productImageService;
//转到前台天猫-主页
@RequestMapping(value = "/", method = RequestMethod.GET)
public String goToPage(HttpSession session, Map<String, Object> map) {
logger.info("检查用户是否登录");
Object userId = checkUser(session);
if (userId != null) {
logger.info("获取用户信息");
User user = userService.get(Integer.parseInt(userId.toString()));
map.put("user", user);
}
logger.info("获取产品分类列表");
List<Category> categoryList = categoryService.getList(null,null);
logger.info("获取每个分类下的产品列表");
for(Category category : categoryList){
List<Product> productList = productService.getList(
new Product().setProduct_category(category),
new Byte[]{0, 2},
new OrderUtil("product_sale_count", true), new PageUtil(0, 8)
);
if (productList != null) {
rewardList.get(i).setReview_product(pro);
}
// map.put("rewardList", rewardList);
// List<Reward> rewardList = rewardService.getList(reward, reward_isEnabled_array, orderUtil, pageUtil);
object.put("rewardList", JSONArray.parseArray(JSON.toJSONString(rewardList)));
logger.info("按条件获取评论总条数");
Integer rewardCount = reviewService.getTotal(null);
object.put("rewardCount", rewardCount);
logger.info("获取分页信息");
pageUtil.setTotal(rewardCount);
object.put("totalPage", pageUtil.getTotalPage());
object.put("pageUtil", pageUtil);
return object.toJSONString();
}
}
/**
}
JSONObject orderItemMap = JSONObject.parseObject(orderItemJSON);
Set<String> orderItem_id = orderItemMap.keySet();
List<ProductOrderItem> productOrderItemList = new ArrayList<>(3);
if (orderItem_id.size() > 0) {
for (String id : orderItem_id) {
ProductOrderItem orderItem = productOrderItemService.get(Integer.valueOf(id));
if (orderItem == null || !orderItem.getProductOrderItem_user().getUser_id().equals(userId)) {
logger.warn("订单项为空或用户状态不一致!");
object.put("success", false);
object.put("url", "/cart");
return object.toJSONString();
}
Integer product_stock_count = 0;
try {
product_stock_count = this.productService.get(orderItem.getProductOrderItem_product().getProduct_id()).getProduct_stock_count();
} catch (Exception e) {
e.printStackTrace();
}
// if(product_stock_count<orderItem.getProductOrderItem_number()) {
// object.put("success", false);
// object.put("url", "/not");
// return object.toJSONString();
// }
if (orderItem.getProductOrderItem_order() != null) {
logger.warn("用户订单项不属于购物车,回到购物车页");
object.put("success", false);
object.put("url", "/cart");
return object.toJSONString();
}
boolean yn = productOrderItemService.update(new ProductOrderItem().setProductOrderItem_id(Integer.valueOf(id)).setProductOrderItem_userMessage(orderItemMap.getString(id)));
if (!yn) {
throw new RuntimeException();
}
orderItem.setProductOrderItem_product(productService.get(orderItem.getProductOrderItem_product().getProduct_id()));
productOrderItemList.add(orderItem);
}
} else {
object.put("success", false);
object.put("url", "/cart");
return object.toJSONString();
}
logger.info("将收货地址等相关信息存入Cookie中,便于下次使用");
Cookie[] cookies = new Cookie[]{
new Cookie("addressId", addressId),
new Cookie("cityAddressId", cityAddressId),
new Cookie("districtAddressId", districtAddressId),
pageUtil.setTotal(rewardCount);
object.put("totalPage", pageUtil.getTotalPage());
object.put("pageUtil", pageUtil);
return object.toJSONString();
}
}
/**
* 主页
*/
@Controller
public class ForeHomeController extends BaseController {
@Resource(name = "userService")
private UserService userService;
@Resource(name="categoryService")
private CategoryService categoryService;
@Resource(name="productService")
private ProductService productService;
@Resource(name="productImageService")
private ProductImageService productImageService;
//转到前台天猫-主页
@RequestMapping(value = "/", method = RequestMethod.GET)
public String goToPage(HttpSession session, Map<String, Object> map) {
logger.info("检查用户是否登录");
Object userId = checkUser(session);
if (userId != null) {
logger.info("获取用户信息");
logger.info("产品预览图片添加成功!");
} else {
logger.warn("产品预览图片添加失败!事务回滚");
jsonObject.put("success", false);
throw new RuntimeException();
}
}
if (productDetailsImageList != null && productDetailsImageList.length > 0) {
logger.info("整合产品子信息-产品详情图片");
List<ProductImage> productImageList = new ArrayList<>(5);
for (String imageName : productDetailsImageList) {
productImageList.add(new ProductImage()
.setProductImage_type((byte) 1)
.setProductImage_src(imageName.substring(imageName.lastIndexOf("/") + 1))
.setProductImage_product(new Product().setProduct_id(product_id))
);
}
logger.info("共有{}条产品详情图片数据", productImageList.size());
yn = productImageService.addList(productImageList);
if (yn) {
logger.info("产品详情图片添加成功!");
} else {
logger.warn("产品详情图片添加失败!事务回滚");
jsonObject.put("success", false);
throw new RuntimeException();
}
}
logger.info("产品信息及其子信息添加成功!");
jsonObject.put("success", true);
jsonObject.put("product_id", product_id);
return jsonObject.toJSONString();
}
//更新产品信息-ajax
@ResponseBody
@RequestMapping(value = "admin/product/{product_id}", method = RequestMethod.PUT, produces = "application/json;charset=utf-8")
public String updateProduct(@RequestParam String product_name/* 产品名称 */,
@RequestParam String product_title/* 产品标题 */,
@RequestParam Integer product_category_id/* 产品类型ID */,
@RequestParam Double product_sale_price/* 产品促销价 */,
@RequestParam Double product_price/* 产品原价 */,
@RequestParam Byte product_isEnabled/* 产品状态 */,
@RequestParam String propertyAddJson/* 产品添加属性JSON */,
@RequestParam String propertyUpdateJson/* 产品更新属性JSON */,
@RequestParam Integer product_stock_count/* 产品库存 */,
@RequestParam(required = false) Integer[] propertyDeleteList/* 产品删除属性ID数组 */,
@RequestParam(required = false) String[] productSingleImageList/*产品预览图片名称数组*/,
@RequestParam(required = false) String[] productDetailsImageList/*产品详情图片名称数组*/,
@PathVariable("product_id") Integer product_id/* 产品ID */) {
JSONObject jsonObject = new JSONObject();
logger.info("整合产品信息");
Product product = new Product()
/**
* 后台管理-打赏信息页
*/
@Controller
public class RewardController extends BaseController {
@Resource(name = "rewardService")
private RewardService rewardService;
@Resource(name = "reviewService")
private ReviewService reviewService;
@Resource(name = "lastIDService")
private LastIDService lastIDService;
@Resource(name = "userService")
private UserService userService;
@Resource(name = "productService")
private ProductService productService;
//转到后台管理-打赏信息页-ajax
@RequestMapping(value = "admin/reward", method = RequestMethod.GET)
public String goToPage(HttpSession session, Map<String, Object> map) {
logger.info("获取前10条打赏信息列表");
PageUtil pageUtil = new PageUtil(0, 10);
List<Review> rewardList = reviewService.getList( null, pageUtil);
for (int i = 0; i < rewardList.size(); i++) {
User use = userService.get(rewardList.get(i).getReview_user().getUser_id());
rewardList.get(i).setReview_user(use);
Product pro = productService.get(rewardList.get(i).getReview_product().getProduct_id());
rewardList.get(i).setReview_product(pro);
}
map.put("rewardList", rewardList);
logger.info("获取评论总数量");
/**
* 后台管理-订单页
*/
@Controller
public class
OrderController extends BaseController{
@Resource(name="productOrderService")
private ProductOrderService productOrderService;
@Resource(name = "addressService")
private AddressService addressService;
@Resource(name="userService")
private UserService userService;
@Resource(name = "productOrderItemService")
private ProductOrderItemService productOrderItemService;
@Resource(name = "productService")
private ProductService productService;
@Resource(name = "productImageService")
private ProductImageService productImageService;
@Resource(name = "lastIDService")
private LastIDService lastIDService;
//转到后台管理-订单页-ajax
@RequestMapping(value = "admin/order", method = RequestMethod.GET)
public String goToPage(HttpSession session, Map<String, Object> map){
logger.info("获取前10条订单列表");
PageUtil pageUtil = new PageUtil(0, 10);
List<ProductOrder> productOrderList =
productOrderService.getList(
null,
if (order == null) {
logger.warn("订单不存在,返回订单列表页");
return "redirect:/order/0/10";
}
logger.info("验证订单状态");
if (order.getProductOrder_status() != 1) {
logger.warn("订单状态不正确,返回订单列表页");
return "redirect:/order/0/10";
}
logger.info("验证用户与订单是否一致");
if (order.getProductOrder_user().getUser_id() != Integer.parseInt(userId.toString())) {
logger.warn("用户与订单信息不一致,返回订单列表页");
return "redirect:/order/0/10";
}
logger.info("更新订单信息");
ProductOrder productOrder = new ProductOrder()
.setProductOrder_id(order.getProductOrder_id())
.setProductOrder_delivery_date(new Date())
.setProductOrder_status((byte) 2);
productOrderService.update(productOrder);
return "redirect:/order/0/10";
}
//更新订单信息为交易成功-ajax
@ResponseBody
@RequestMapping(value = "order/success/{order_code}", method = RequestMethod.PUT, produces = "application/json;charset=utf-8")
public String orderSuccess(HttpSession session, @PathVariable("order_code") String order_code) {
JSONObject object = new JSONObject();
logger.info("检查用户是否登录");
Object userId = checkUser(session);
if (userId == null) {
object.put("success", false);
object.put("url", "/login");
return object.toJSONString();
}
logger.info("------验证订单信息------");
logger.info("查询订单是否存在");
ProductOrder order = productOrderService.getByCode(order_code);
if (order == null) {
logger.warn("订单不存在,返回订单列表页");