yujian
2019-04-29 9a24f2802a3d6fe3e82c05e52f2880d65ad04dcf
fanli/src/main/java/com/yeshi/fanli/service/impl/taobao/TaoBaoShopServiceImpl.java
@@ -1,21 +1,34 @@
package com.yeshi.fanli.service.impl.taobao;
import java.io.InputStream;
import java.util.List;
import java.util.UUID;
import javax.annotation.Resource;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
import org.yeshi.utils.tencentcloud.COSManager;
import com.yeshi.fanli.dao.mybatis.taobao.TaoBaoShopMapper;
import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief;
import com.yeshi.fanli.entity.taobao.TaoBaoShop;
import com.yeshi.fanli.entity.taobao.TaoBaoShopInfo;
import com.yeshi.fanli.log.LogHelper;
import com.yeshi.fanli.service.inter.taobao.TaoBaoShopService;
import com.yeshi.fanli.util.StringUtil;
import com.yeshi.fanli.util.db.MongoDBManager;
import com.yeshi.fanli.util.taobao.TaoBaoShopUtil;
import com.yeshi.fanli.vo.brand.TaoBaoShopVO;
@Service
public class TaoBaoShopServiceImpl implements TaoBaoShopService {
   @Resource
   private MongoDBManager mongoDBManager;
   @Resource
   private TaoBaoShopMapper taoBaoShopMapper;
   @Override
   public TaoBaoShopInfo getTaoBaoShopInfo(TaoBaoGoodsBrief goodsInfo) {
@@ -42,5 +55,95 @@
      LogHelper.test("获取店铺信息耗时:" + (System.currentTimeMillis() - startTime));
      return shopInfo;
   }
   @Override
   public TaoBaoShop selectByPrimaryKey(Long id) {
      return taoBaoShopMapper.selectByPrimaryKey(id);
   }
   @Override
   public int insertSelective(TaoBaoShop record) {
      return taoBaoShopMapper.insertSelective(record);
   }
   @Override
   public int updateByPrimaryKeySelective(TaoBaoShop record) {
      return taoBaoShopMapper.updateByPrimaryKeySelective(record);
   }
   @Override
   public void changeInfo(MultipartFile file, Long id, String shopName) {
      TaoBaoShop taoBaoShop = taoBaoShopMapper.selectByPrimaryKey(id);
      if (taoBaoShop == null) {
         return;
      }
      String fileLink = null;
      if (file != null) {
         try {
            fileLink = uploadPicture(file);
         } catch (Exception e) {
            e.printStackTrace();
         }
      }
      TaoBaoShop updateShop = new TaoBaoShop();
      if (!StringUtil.isNullOrEmpty(fileLink)) {
         updateShop.setShopIconCustom(fileLink);
         // 删除图片
         String shopIconCustom = taoBaoShop.getShopIconCustom();
         if (!StringUtil.isNullOrEmpty(shopIconCustom)) {
            COSManager.getInstance().deleteFile(shopIconCustom);
         }
      }
      if (StringUtil.isNullOrEmpty(shopName) || "null".equalsIgnoreCase(shopName)) {
         shopName = null;
      }
      updateShop.setId(id);
      updateShop.setShopNameCustom(shopName);
      taoBaoShopMapper.updateByPrimaryKeySelective(updateShop);
   }
   /**
    * 上传图片
    * @param file
    * @return
    * @throws Exception
    */
   public String uploadPicture(MultipartFile file) throws Exception {
      // 文件解析
      InputStream inputStream = file.getInputStream();
      String contentType = file.getContentType();
      String type = contentType.substring(contentType.indexOf("/") + 1);
      // 文件路径
      String filePath="/img/TaoBaoShop/"+UUID.randomUUID().toString().replace("-", "") + "." + type;
      // 执行上传
      String fileLink= COSManager.getInstance().uploadFile(inputStream, filePath).getUrl();
      return fileLink;
   }
   @Override
   public List<TaoBaoShopVO> listBrandShopinfo(long start, int count, Long cid) {
      return taoBaoShopMapper.listBrandShopinfo(start, count, cid);
   }
   @Override
   public long countBrandShopinfo(Long cid) {
      return taoBaoShopMapper.countBrandShopinfo(cid);
   }
}