Administrator
2020-02-24 898bf7fa7eb1ba538d0af7f3c8f016dd29c4ac2c
fanli/src/main/java/com/yeshi/fanli/service/impl/dynamic/GoodsEvaluateServiceImpl.java
@@ -284,6 +284,7 @@
         throw new GoodsEvaluateException(1, "该商品信息不存在");
      }
      
      int totalImg = 0;
      if (listpic != null && listpic.size() > 0) {
         for (int i = 0; i < listpic.size(); i++) {
            ImgInfo imgInfo0 = new ImgInfo();
@@ -311,10 +312,12 @@
                  simpleGoods.setState(0);
               }
               imgInfo0.setGoods(simpleGoods);
               imgInfo0.setGoodsVO(goodsDetailVO);
            } else {
               imgInfo0.setType(ImgEnum.img);
            }
            listImg.add(imgInfo0);
            totalImg ++;
         }
      }
@@ -333,7 +336,18 @@
         }
      }
      
      // 保存图片信息
      int lineNum = 0;
      if (totalImg > 0) {
         if (totalImg == 1) {
            lineNum = 1;
         } else if (totalImg <= 4) {
            lineNum = 2;
         } else {
            lineNum = 3;
         }
      }
      resultObj.setLineNum(lineNum);
      resultObj.setGoods(goodsDetailVO);
      resultObj.setMainPicNum(picNum);
      resultObj.setImgList(listImg);
@@ -453,6 +467,7 @@
         }
      }
      int totalImg = 0;
      if (!StringUtil.isNullOrEmpty(goodsList)) {
         String[] goodsArray = goodsList.split(",");
         if (goodsArray != null && goodsArray.length > 0) {
@@ -494,6 +509,9 @@
                  simpleGoods.setState(0);
               }
               imgInfo0.setGoods(simpleGoods);
               imgInfo0.setGoodsVO(goodsDetailVO);
               listImg.add(imgInfo0);
               totalImg ++;
            }
         }
      }
@@ -536,6 +554,19 @@
         }
      }
      int lineNum = 0;
      if (totalImg > 0) {
         if (totalImg == 1) {
            lineNum = 1;
         } else if (totalImg <= 4) {
            lineNum = 2;
         } else {
            lineNum = 3;
         }
      }
      resultObj.setLineNum(lineNum);
      // 保存图片信息
      resultObj.setImgList(listImg);
      goodsEvaluateDao.save(resultObj);
@@ -686,6 +717,8 @@
      int width = 0;
      int height = 0;
      int width2 = 0;
      int height2 = 0;
      List<ImgInfo> listImg = new ArrayList<ImgInfo>();
      if (fileRequest != null) {
         MultipartFile filevideo = fileRequest.getFile("filevideo");
@@ -703,6 +736,10 @@
         MultipartFile activityfile = fileRequest.getFile("activityfile");
         if (activityfile != null) {
            removePicture(activityPic);
            InputStream inputStream = activityfile.getInputStream();
            BufferedImage sourceImg = ImageIO.read(inputStream);
            width2 = sourceImg.getWidth();
            height2 = sourceImg.getHeight();
            String picLink = uploadPicture(activityfile);
            activityPic = picLink;
         }
@@ -741,8 +778,6 @@
         } else {
            imgactivity = new ImgInfo();
            imgactivity.setId(UUID.randomUUID().toString().replace("-", ""));
            imgactivity.setW(1);
            imgactivity.setH(1);
            imgactivity.setLarge(true);
            imgactivity.setPid(pid);
            imgactivity.setUrl(activityPic);
@@ -750,8 +785,16 @@
            imgactivity.setActivityUrl(imgInfo.getActivityUrl());
            imgactivity.setType(ImgEnum.activity);
         }
         if (width2 > 0) {
            imgactivity.setW(width2);
            imgactivity.setH(height2);
         } else {
            imgactivity.setW(imgactivity.getW());
            imgactivity.setH(imgactivity.getH());
         }
         listImg.add(imgactivity);
      }
      resultObj.setLineNum(1);
      resultObj.setImgList(listImg);
      goodsEvaluateDao.save(resultObj);
   }
@@ -769,6 +812,7 @@
      // 原封视频面图
      ImgInfo imgVideo = null;
      ImgInfo imgActivity = null;
      List<String> listDel = new ArrayList<String>();
      List<String> listOld = new ArrayList<String>();
      
@@ -786,10 +830,13 @@
               if (!StringUtil.isNullOrEmpty(url)) {
                  listOld.add(url);
               }
            } else if (type == ImgEnum.activity) {
               imgActivity = info;
            }
         }
      }
      MultipartFile activityFile = null;
      // 视频部分
      if (fileRequest != null) {
         MultipartFile filevideo = fileRequest.getFile("filevideo");
@@ -823,6 +870,9 @@
            imgVideo.setW(width);
            imgVideo.setH(height);
         }
         activityFile = fileRequest.getFile("activityFile");
      }
      List<ImgInfo> listImg = new ArrayList<ImgInfo>();
@@ -831,6 +881,7 @@
            if (imgVideo != null && StringUtil.isNullOrEmpty(imgVideo.getUrl())) {
               throw new GoodsEvaluateException(1, "视频封面图不能为空");
            }
            imgVideo.setVideoUrl(videoUrl);
            listImg.add(imgVideo);
         } else {
@@ -840,33 +891,52 @@
            }
         }
      }
      if (activityFile != null) {
         InputStream inputStream = activityFile.getInputStream();
         BufferedImage sourceImg = ImageIO.read(inputStream);
         int width = sourceImg.getWidth();
         int height = sourceImg.getHeight();
         String picLink = uploadPicture(activityFile);
         ImgInfo activity = new ImgInfo();
         activity.setId(UUID.randomUUID().toString().replace("-", ""));
         activity.setLarge(true);
         activity.setPid(pid);
         activity.setUrl(picLink);
         activity.setUrlHD(picLink);
         activity.setActivityPic(picLink);
         activity.setW(width);
         activity.setH(height);
         activity.setType(ImgEnum.activity);
         listImg.add(activity);
      } else if (imgActivity != null) {
         listImg.add(imgActivity);
      }
      // 编辑图片
      List<String> listpic = null;
      if (!StringUtil.isNullOrEmpty(picUrls)) {
         String[] pics = picUrls.split(",");
         if (pics != null) {
            listpic = new ArrayList<>();
            for (int i = 0; i < pics.length; i++) {
               String picLink = pics[i];
               if (fileRequest != null) {
                  MultipartFile file = fileRequest.getFile("file" + i);
                  if (file != null) {
                     InputStream inputStream = file.getInputStream();
                     BufferedImage sourceImg = ImageIO.read(inputStream);
                     int width = sourceImg.getWidth();
                     int height = sourceImg.getHeight();
                     picLink = uploadPicture(file);
                     
                     ImgInfo imgInfo0 = new ImgInfo();
                     imgInfo0.setId(UUID.randomUUID().toString().replace("-", ""));
                     imgInfo0.setLarge(false);
                     imgInfo0.setLarge(true);
                     imgInfo0.setPid(pid);
                     imgInfo0.setUrl(listpic.get(i));
                     imgInfo0.setUrlHD(listpic.get(i));
                     imgInfo0.setUrl(picLink);
                     imgInfo0.setUrlHD(picLink);
                     imgInfo0.setType(ImgEnum.img);
                     imgVideo.setW(width);
                     imgVideo.setH(height);
                     imgVideo.setW(1);
                     imgVideo.setH(1);
                     listImg.add(imgInfo0);
                     continue;
                  }
@@ -901,7 +971,7 @@
               listDel.add(listOld.get(j));
         }
      }
      resultObj.setLineNum(1);
      resultObj.setImgList(listImg);
      goodsEvaluateDao.save(resultObj);
@@ -1131,13 +1201,40 @@
            GoodsDetailVO goods = goodsEvaluate.getGoods();
            if (goods != null) {
               GoodsDetailVO goodsNew = getGoodsNewInfo(goods.getGoodsId(), goods.getGoodsType(), paramsDTO);
               if (goodsNew != null)
                  goodsEvaluate.setGoods(goodsNew);
            }
            // 更新商品信息
            List<ImgInfo> imgList = goodsEvaluate.getImgList();
            if (imgList == null || imgList.size() == 0) {
               continue;
            }
            for (ImgInfo imgInfo: imgList) {
               SimpleGoods simpleGoods = imgInfo.getGoods();
               if (simpleGoods == null) {
                  continue;
               }
               GoodsDetailVO goodsDetailVO = getGoodsNewInfo(simpleGoods.getGoodsId(), simpleGoods.getGoodsType(), paramsDTO);
               if (goodsDetailVO != null) {
                  simpleGoods.setPrice(goodsDetailVO.getCouponPrice());
                  CouponInfoVO couponInfo = goodsDetailVO.getCouponInfo();
                  if (couponInfo == null) {
                     simpleGoods.setPrice(goodsDetailVO.getZkPrice());
                     simpleGoods.setState(1);
                  } else {
                     simpleGoods.setPrice(goodsDetailVO.getCouponPrice());
                     simpleGoods.setAmount(couponInfo.getAmount());
                     simpleGoods.setState(0);
                  }
                  imgInfo.setGoods(simpleGoods);
                  imgInfo.setGoodsVO(goodsDetailVO);
               }
            }
            goodsEvaluate.setUpdateTime(new Date());
            goodsEvaluateDao.save(goodsEvaluate);
         }
      } catch (Exception e) {
         LogHelper.errorDetailInfo(e);