yj
2020-03-11 bc1e5a9886fded6370bd713843a3bdc713a41073
画图bug
4个文件已修改
26 ■■■■ 已修改文件
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/DynamicControllerV2.java 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/impl/user/QrCodeServiceImpl.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/service/inter/user/QrCodeService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/util/ImageUtil.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fanli/src/main/java/com/yeshi/fanli/controller/client/v2/DynamicControllerV2.java
@@ -62,6 +62,7 @@
import com.yeshi.fanli.service.inter.user.tb.UserExtraTaoBaoInfoService;
import com.yeshi.fanli.service.manger.goods.ConvertLinkManager;
import com.yeshi.fanli.util.Constant;
import com.yeshi.fanli.util.MoneyBigDecimalUtil;
import com.yeshi.fanli.util.StringUtil;
import com.yeshi.fanli.util.VersionUtil;
import com.yeshi.fanli.util.cache.JDGoodsCacheUtil;
@@ -629,8 +630,7 @@
                        return new JsonPrimitive("");
                    } else {
                        // 保留2位小数
                        value = value.setScale(2);
                        return new JsonPrimitive(value.toString());
                        return new JsonPrimitive(MoneyBigDecimalUtil.getWithNoZera(value)+"");
                    }
                }
            }).registerTypeAdapter(Date.class, new JsonSerializer<Date>() {
@@ -822,7 +822,7 @@
                            continue;
                        }
                        String jumpLink = getJumpLink(goodsVO, user, relationId, inviteCode);
                        String jumpLink = getJumpLink(goodsVO, user, relationId, inviteCode, imgInfo.getUrl());
                        if (!StringUtil.isNullOrEmpty(jumpLink)) {
                            list.add(jumpLink);
                        }
@@ -834,7 +834,7 @@
                            if (imgInfo.getGoodsVO() != null)
                                if (imgInfo.getGoodsVO().getGoodsId().longValue() == goodsId.longValue()
                                        && imgInfo.getGoodsVO().getGoodsType() == goodsType.intValue()) {
                                    String jumpLink = getJumpLink(imgInfo.getGoodsVO(), user, relationId, inviteCode);
                                    String jumpLink = getJumpLink(imgInfo.getGoodsVO(), user, relationId, inviteCode, imgInfo.getUrl());
                                    if (!StringUtil.isNullOrEmpty(jumpLink)) {
                                        list.add(jumpLink);
                                    }
@@ -844,7 +844,7 @@
                    } else if (type == 2 || type == 3) {
                        for (ImgInfo imgInfo : imgs) {
                            if (imgInfo.getGoodsVO() != null) {
                                String jumpLink = getJumpLink(imgInfo.getGoodsVO(), user, relationId, inviteCode);
                                String jumpLink = getJumpLink(imgInfo.getGoodsVO(), user, relationId, inviteCode, imgInfo.getUrl() );
                                if (!StringUtil.isNullOrEmpty(jumpLink)) {
                                    list.add(jumpLink);
                                }
@@ -892,7 +892,7 @@
        }
    }
    private String getJumpLink(GoodsDetailVO goodsVO, UserInfo user, String relationId, String inviteCode) {
    private String getJumpLink(GoodsDetailVO goodsVO, UserInfo user, String relationId, String inviteCode, String mainPic) {
        String jumpLink = null;
        if (goodsVO.getGoodsType() == Constant.SOURCE_TYPE_TAOBAO) {
            TaoBaoLink taoBaoLink = null;
@@ -924,7 +924,7 @@
        }
        FileUploadResult uploadResult = qrCodeService.drawDynamicGoodsPoster(jumpLink, user.getPortrait(), inviteCode,
                goodsVO);
                mainPic, goodsVO);
        if (uploadResult != null) {
            return uploadResult.getUrl();
        }
fanli/src/main/java/com/yeshi/fanli/service/impl/user/QrCodeServiceImpl.java
@@ -286,7 +286,8 @@
    
    
    @Override
    public FileUploadResult drawDynamicGoodsPoster(String erCodeUrl, String portrait, String inviteCode, GoodsDetailVO goods) {
    public FileUploadResult drawDynamicGoodsPoster(String erCodeUrl, String portrait, String inviteCode,
            String mainPic, GoodsDetailVO goods) {
        // 二维码流
        InputStream erCodeStream = null;
        try {
@@ -309,7 +310,7 @@
        }
        
        // 画图
        InputStream drawStream = ImageUtil.drawGoodsPoster(erCodeStream, portraitStream,inviteCode, goods);
        InputStream drawStream = ImageUtil.drawGoodsPoster(erCodeStream, portraitStream,inviteCode,mainPic, goods);
        // 上传位置
        String uuid = UUID.randomUUID().toString().replace("-", "");
        String upPath = FilePathEnum.shareGoods.getPath() + uuid + "_" + goods.getGoodsId() + "_" + System.currentTimeMillis() + ".png";
fanli/src/main/java/com/yeshi/fanli/service/inter/user/QrCodeService.java
@@ -90,5 +90,5 @@
     */
    public FileUploadResult drawGoodsPosterXCX(InputStream erCodeStream, UserInfo user, GoodsDetailVO goods);
    public FileUploadResult drawDynamicGoodsPoster(String erCodeUrl, String portrait, String inviteCode, GoodsDetailVO goods);
    public FileUploadResult drawDynamicGoodsPoster(String erCodeUrl, String portrait, String inviteCode, String mainPic, GoodsDetailVO goods);
}
fanli/src/main/java/com/yeshi/fanli/util/ImageUtil.java
@@ -248,7 +248,8 @@
     * @param goods
     * @return
     */
    public static InputStream drawGoodsPoster(InputStream qrcode, InputStream portraitStream, String inviteCode, GoodsDetailVO goods) {
    public static InputStream drawGoodsPoster(InputStream qrcode, InputStream portraitStream, String inviteCode,
            String mainPic, GoodsDetailVO goods) {
        try {
            String fontPath = "/usr/share/fonts/PingFang_Medium.ttf";
            String os = System.getProperty("os.name");
@@ -282,7 +283,7 @@
            int spacing = 20; // 右边距
            // 1、画商品主图
            InputStream picStream = HttpUtil.getAsInputStream(goods.getPicUrl().replace("https://", "http://"));
            InputStream picStream = HttpUtil.getAsInputStream(mainPic);
//            InputStream picStream  = ImageUtil.class.getClassLoader().getResourceAsStream("image/share/test_pic1.jpg");
            g2d.drawImage(ImageIO.read(picStream), 0, 0, x, y, null);