Pu Zhibing
2 天以前 e5bdd46a51ebfda768262ff51c17879241ea2b14
user/guns-admin/src/main/java/com/supersavedriving/user/modular/system/service/impl/DriverServiceImpl.java
@@ -3,6 +3,7 @@
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.heredata.hos.model.bucket.Bucket;
import com.supersavedriving.user.core.util.ToolUtil;
import com.supersavedriving.user.modular.system.dao.DriverMapper;
import com.supersavedriving.user.modular.system.model.*;
@@ -13,6 +14,8 @@
import com.supersavedriving.user.modular.system.util.UUIDUtil;
import com.supersavedriving.user.modular.system.util.huawei.OBSUtil;
import com.supersavedriving.user.modular.system.util.mongodb.model.Location;
import com.supersavedriving.user.modular.system.util.qianyuntong.NCOSSUtil;
import com.supersavedriving.user.modular.system.util.qianyuntong.QianYunTongConfig;
import com.supersavedriving.user.modular.system.util.weChat.WeChatUtil;
import com.supersavedriving.user.modular.system.warpper.DriverRegisterWarpper;
import com.supersavedriving.user.modular.system.warpper.NearbyDriverWarpper;
@@ -26,12 +29,10 @@
import org.springframework.data.mongodb.core.query.Query;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.io.InputStream;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.*;
import java.util.stream.Collectors;
/**
@@ -68,6 +69,9 @@
    @Autowired
    private ITBranchOfficeAreaService branchOfficeAreaService;
    @Resource
    private QianYunTongConfig qianYunTongConfig;
@@ -250,7 +254,30 @@
    //生成小程序二维码
    public String wechatMiniProgramORCode(Integer driverId) throws Exception{
        InputStream release = weChatUtil.getwxacodeunlimit("pages/index/index", "driverId=" + driverId, "release");
        String s = OBSUtil.putObjectToBucket(release, "driver_" + driverId);
        return s;
//        String s = OBSUtil.putObjectToBucket(release, "driver_" + driverId);
        String pictureName = "driver_" + driverId + ".png";
        String bucketName = qianYunTongConfig.getBucketName();
        Bucket grjyTest = NCOSSUtil.getBucketInfo(bucketName);
        if (null == grjyTest) {
            //创建桶
            Boolean bucket = NCOSSUtil.createBucket(bucketName);
            if (!bucket) {
                throw new RuntimeException("创建存储桶失败");
            }
            //设置桶策略
            String policyText = "{\"Version\":\"2025-06-23\",\"Statement\":[{\"Sid\":\"Stmt20250623\",\"Action\":[\"GetObject\"],\"Effect\":\"Allow\",\"Resource\":\"" + bucketName + "/*\",\"Principal\":\"*\"}]}";
            Boolean bucketPolicy = NCOSSUtil.setBucketPolicy(bucketName, policyText);
            if (!bucketPolicy) {
                throw new RuntimeException("设置桶策略失败");
            }
        }
        //上传对象
        String key = "imgs/daijia/driver/" + pictureName;
        String object = NCOSSUtil.putObject(bucketName, key, release);
        if (null == object) {
            throw new RuntimeException("上传图片失败");
        }
        return "https://traffic.qytzt.cn/v1/AUTH_" + qianYunTongConfig.getAccount() + "/" + bucketName + "/" + key;
    }
}