yujian
2020-06-29 f94a5a1d3fe9bde0e599d41f2d97caea1b08a88d
fanli/src/main/java/com/yeshi/fanli/service/impl/user/QrCodeServiceImpl.java
@@ -17,6 +17,7 @@
import com.yeshi.fanli.dao.mybatis.share.ShareMapper;
import com.yeshi.fanli.entity.bus.user.UserInfo;
import com.yeshi.fanli.log.LogHelper;
import com.yeshi.fanli.service.inter.user.QrCodeService;
import com.yeshi.fanli.service.inter.user.SpreadUserImgService;
import com.yeshi.fanli.util.Constant;
@@ -26,6 +27,7 @@
import com.yeshi.fanli.util.StringUtil;
import com.yeshi.fanli.util.UserInviteUtil;
import com.yeshi.fanli.vo.goods.GoodsDetailVO;
import com.yeshi.fanli.vo.user.PullNewRuleVO;
@Service
public class QrCodeServiceImpl implements QrCodeService {
@@ -419,4 +421,34 @@
      return COSManager.getInstance().uploadInputStream(drawStream, upPath);
   }
   @Override
   public String drawPullNewPoster(Long uid, String portrait, String inviteCode, PullNewRuleVO rule) {
      // 头像流
      InputStream portraitStream = HttpUtil.getAsInputStream(portrait);
      // 生成二维码
      String erCode = UserInviteUtil.getShareUrl(uid);
      InputStream erCodeStream = null;
      try {
         erCodeStream = QRCodeUtil.getInstance(250).encodeDeleteWhite(erCode);
      } catch (Exception e) {
         LogHelper.errorDetailInfo(e);
      }
      if (erCodeStream == null)
         return null;
      // 画图
      InputStream drawStream = ImageUtil.drawPullNewPoster(erCodeStream,portraitStream, inviteCode, rule);
      if (drawStream == null)
         return null;
      // 上传位置
      String uuid = UUID.randomUUID().toString().replace("-", "");
      String upPath = FilePathEnum.ercodeActivity.getPath() + uuid + "_" +uid + "_" + System.currentTimeMillis() + ".png";
      // 上传文件
       FileUploadResult result = COSManager.getInstance().uploadInputStream(drawStream, upPath);
       if (result == null)
          return null;
       return result.getUrl();
   }
}