@RequestMapping(value = "/upload", method = RequestMethod.POST) public @ResponseBody void uploadProduct( @RequestParam(value = "pic", required = false) MultipartFile pic, @RequestParam(value = "id", required = false) Integer id, @RequestParam("name") String name, @RequestParam("description") String description, @RequestParam("type") String type, @RequestParam("category") String category, @RequestParam("price") double price, @RequestParam("unit") String unit, HttpServletResponse response) { if (type == null || name == null || pic == null || description == null || category == null || price == 0 || unit == null) { response.setStatus(HttpStatus.NOT_ACCEPTABLE.value()); return; } Product product; if (id != null) { product = productService.getById(id); } else { product = new Product(); } product.setName(name); product.setDescription(description); product.setType(Type.valueOf(type)); product.setCategory(Category.valueOf(category)); product.setPrice(price); product.setUnit(unit); // for Linux String dstFilePath = "/" + PathUtil.getWebInfPath() + "/product_images/" + product.generatePicurlHash() + ".jpg"; // for Windows // String dstFilePath = PathUtil.getWebInfPath() + "/product_images/" + // product.generatePicurlHash() + ".jpg"; System.out.println("dstFilePath =" + dstFilePath); if (pic != null) { product.setPicurl("product_images/" + product.generatePicurlHash() + ".jpg"); File picFile = new File(dstFilePath); try { pic.transferTo(picFile); } catch (IllegalStateException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } product.setDataChangeLastTime(new Timestamp(System.currentTimeMillis())); if (id != null) { productService.update(product); } else { productService.save(product); } }
@RequestMapping(value = "/type_map", method = RequestMethod.GET) public @ResponseBody JSONArray getTypeMap() { JSONArray jsonArray = new JSONArray(); Map<Type, List<Category>> typeMap = productService.getTypeMap(); for (Type key : typeMap.keySet()) { List<Category> categoryList = typeMap.get(key); JSONArray categoryJsonArray = new JSONArray(); for (Category category : categoryList) { JSONObject jsonObject = new JSONObject(); jsonObject.put("key", category.getCategory()); jsonObject.put("value", category.toString()); categoryJsonArray.add(jsonObject); } JSONObject jsonObject = new JSONObject(); jsonObject.put("name", key.getType()); jsonObject.put("value", key.toString()); jsonObject.put("list", categoryJsonArray); jsonArray.add(jsonObject); } return jsonArray; }