rk
11 小时以前 580f4d3c2ca9eee53eee95a4de2f6610b790780a
server/dmmall_service/src/main/java/com/doumee/service/business/impl/InviteRecordServiceImpl.java
@@ -34,6 +34,7 @@
import com.doumee.service.business.InviteRecordService;
import com.github.xiaoymin.knife4j.core.util.CollectionUtils;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import io.swagger.models.auth.In;
import org.apache.commons.lang3.StringUtils;
import org.apache.http.util.TextUtils;
import org.apache.shiro.SecurityUtils;
@@ -62,6 +63,9 @@
    @Autowired
    private SystemDictDataBiz systemDictDataBiz;
    @Autowired
    private ShopMapper shopMapper;
    @Override
    public InviteInfoResponse getInviteInfo(Integer memberId){
@@ -100,15 +104,33 @@
    }
    /**
     * 生成海报图
     * @param userType
     * @param memberId
     * @return
     * @throws Exception
     */
    @Override
    public String createShareImg(Integer memberId) throws Exception {
    public String createShareImg(Integer userType,Integer memberId) throws Exception {
        String imgUrl = systemDictDataBiz.queryByCode(Constants.ORDER_SET,Constants.INVITE_IMG_URL).getCode();
        String suffix = "m_" + memberId;
        if(Constants.equalsInteger(Constants.ONE,userType)){
            Shop shop = shopMapper.selectById(memberId);
            if(Objects.nonNull(shop)
                    && StringUtils.isNotBlank(shop.getPosterImg())){
                String path = systemDictDataBiz.queryByCode(Constants.OSS, Constants.RESOURCE_PATH).getCode()
                        + systemDictDataBiz.queryByCode(Constants.OSS, Constants.SHOP_FILE).getCode();
                imgUrl = path + shop.getPosterImg();
            }
            suffix = "s_"+memberId;
        }
        BufferedImage img1  = GeneratePicUtil.transfromToImage(imgUrl,imgUrl.substring(imgUrl.lastIndexOf(".") + 1));
        if (img1 == null) {
            return imgUrl;
        }
        String url = null;
        String scene = "m_" + memberId;
        String scene = "trial";
        //内容分享海报图片
        InputStream mpCode = Constants.generateWxMiniImgStream(
                scene,
@@ -120,16 +142,41 @@
        ALiYunUtil obs = new ALiYunUtil(
        systemDictDataBiz.queryByCode(Constants.OSS,Constants.ENDPOINT).getCode()
                ,systemDictDataBiz.queryByCode(Constants.OSS,Constants.ACCESS_ID).getCode(), systemDictDataBiz.queryByCode(Constants.OSS,Constants.ACCESS_KEY).getCode());
        String shareFolder = systemDictDataBiz.queryByCode(Constants.RESOURCE_PATH, Constants.SHARES_FILE).getCode();
        String shareFolder = systemDictDataBiz.queryByCode(Constants.OSS, Constants.SHARES_FILE).getCode();
        String key = DateUtil.getNowShortDate() + "/" + UUID.randomUUID().toString() + ".jpg";
        String fileName = shareFolder + key;
        if (obs.uploadOnlineObject(inputStream,systemDictDataBiz.queryByCode(Constants.OSS, Constants.BUCKETNAME).getCode(), key,null)) {
        if (obs.uploadOnlineObject(inputStream,systemDictDataBiz.queryByCode(Constants.OSS, Constants.BUCKETNAME).getCode(), fileName,null)) {
            url = systemDictDataBiz.queryByCode(Constants.OSS,Constants.RESOURCE_PATH).getCode() + fileName;
        }
        return url;
    }
    @Override
    public String createShopMiniProgramCode(Integer shopId) throws Exception {
        //内容分享海报图片
        InputStream inputStream = Constants.generateWxMiniImgStream(
                "trial",
                "/page/index/?shopId="+shopId,
                true);//小程序
        String url = null;
        ALiYunUtil obs = new ALiYunUtil(
                systemDictDataBiz.queryByCode(Constants.OSS,Constants.ENDPOINT).getCode()
                ,systemDictDataBiz.queryByCode(Constants.OSS,Constants.ACCESS_ID).getCode(),
                systemDictDataBiz.queryByCode(Constants.OSS,Constants.ACCESS_KEY).getCode());
        String shareFolder = systemDictDataBiz.queryByCode(Constants.OSS, Constants.SHARES_FILE).getCode();
        String key = DateUtil.getNowShortDate() + "/" + UUID.randomUUID().toString() + ".jpg";
        String fileName = shareFolder + key;
        if (obs.uploadOnlineObject(inputStream,systemDictDataBiz.queryByCode(Constants.OSS, Constants.BUCKETNAME).getCode(), fileName,null)) {
            url = systemDictDataBiz.queryByCode(Constants.OSS,Constants.RESOURCE_PATH).getCode() + fileName;
        }
        return url;
    }
    @Override
    public Integer create(InviteRecord inviteRecord) {
@@ -191,38 +238,65 @@
    @Override
    public PageData<InviteRecord> findPage(PageWrap<InviteRecord> pageWrap) {
        IPage<InviteRecord> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
        QueryWrapper<InviteRecord> queryWrapper = new QueryWrapper<>();
        MPJLambdaWrapper<InviteRecord> queryWrapper = new MPJLambdaWrapper<>();
        Utils.MP.blankToNull(pageWrap.getModel());
        queryWrapper.lambda().eq(pageWrap.getModel().getId() != null,InviteRecord::getId, pageWrap.getModel().getId());
        queryWrapper.lambda().eq(pageWrap.getModel().getCreator() != null,InviteRecord::getCreator, pageWrap.getModel().getCreator());
        queryWrapper.selectAll(InviteRecord.class )
                .select("t1.name",InviteRecord::getRecName)
                .select("t1.nickname",InviteRecord::getRecNickname)
                .select("t1.phone",InviteRecord::getRecPhone)
                .select("t2.name",InviteRecord::getMemberName)
                .select("t2.nickname",InviteRecord::getMemberNickname)
                .select("t2.open_id",InviteRecord::getOpenid)
                .select("t2.phone",InviteRecord::getMemberPhone)
                .leftJoin(Member.class,Member::getId,InviteRecord::getInviteId)
                .leftJoin(Member.class,Member::getId,InviteRecord::getMemberId) ;
        pageWrap.getModel().setIsdeleted(Constants.ZERO);
        queryWrapper.eq(pageWrap.getModel().getId() != null,InviteRecord::getId, pageWrap.getModel().getId());
        queryWrapper.eq(pageWrap.getModel().getCreator() != null,InviteRecord::getCreator, pageWrap.getModel().getCreator());
        if (pageWrap.getModel().getId() != null) {
            queryWrapper.lambda().ge(InviteRecord::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
            queryWrapper.lambda().le(InviteRecord::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
            queryWrapper.ge(InviteRecord::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
            queryWrapper.le(InviteRecord::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
        }
        queryWrapper.lambda().eq(pageWrap.getModel().getEditor() != null,InviteRecord::getEditor, pageWrap.getModel().getEditor());
        queryWrapper.eq(pageWrap.getModel().getEditor() != null,InviteRecord::getEditor, pageWrap.getModel().getEditor());
        if (pageWrap.getModel().getId() != null) {
            queryWrapper.lambda().ge(InviteRecord::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
            queryWrapper.lambda().le(InviteRecord::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
            queryWrapper.ge(InviteRecord::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
            queryWrapper.le(InviteRecord::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
        }
        queryWrapper.lambda().eq(pageWrap.getModel().getIsdeleted() != null,InviteRecord::getIsdeleted, pageWrap.getModel().getIsdeleted());
        queryWrapper.lambda().eq(pageWrap.getModel().getRemark() != null,InviteRecord::getRemark, pageWrap.getModel().getRemark());
        queryWrapper.lambda().eq(pageWrap.getModel().getInviteId() != null,InviteRecord::getInviteId, pageWrap.getModel().getInviteId());
        queryWrapper.lambda().eq(pageWrap.getModel().getMemberId() != null,InviteRecord::getMemberId, pageWrap.getModel().getMemberId());
        queryWrapper.lambda().eq(pageWrap.getModel().getPhone() != null,InviteRecord::getPhone, pageWrap.getModel().getPhone());
        queryWrapper.lambda().eq(pageWrap.getModel().getFirstOrderStatus() != null,InviteRecord::getFirstOrderStatus, pageWrap.getModel().getFirstOrderStatus());
        queryWrapper.and(StringUtils.isNotBlank(pageWrap.getModel().getRecName()),w->{
            w.like("t1.name",pageWrap.getModel().getRecName()).or()
                    .like("t1.phone",pageWrap.getModel().getRecName()).or()
                    .like("t1.nickname",pageWrap.getModel().getRecName());
        });
        queryWrapper.and(StringUtils.isNotBlank(pageWrap.getModel().getMemberName()),w->{
            w.like("t2.name",pageWrap.getModel().getMemberName()).or()
                    .like("t2.phone",pageWrap.getModel().getMemberName()).or()
                    .like("t2.nickname",pageWrap.getModel().getMemberName());
        });
        queryWrapper.eq(pageWrap.getModel().getIsdeleted() != null,InviteRecord::getIsdeleted, pageWrap.getModel().getIsdeleted());
        queryWrapper.eq(pageWrap.getModel().getRemark() != null,InviteRecord::getRemark, pageWrap.getModel().getRemark());
        queryWrapper.eq(pageWrap.getModel().getInviteId() != null,InviteRecord::getInviteId, pageWrap.getModel().getInviteId());
        queryWrapper.eq(pageWrap.getModel().getMemberId() != null,InviteRecord::getMemberId, pageWrap.getModel().getMemberId());
        queryWrapper.eq(pageWrap.getModel().getPhone() != null,InviteRecord::getPhone, pageWrap.getModel().getPhone());
        queryWrapper.eq(pageWrap.getModel().getFirstOrderStatus() != null,InviteRecord::getFirstOrderStatus, pageWrap.getModel().getFirstOrderStatus());
        if (pageWrap.getModel().getId() != null) {
            queryWrapper.lambda().ge(InviteRecord::getFirstFinishDate, Utils.Date.getStart(pageWrap.getModel().getFirstFinishDate()));
            queryWrapper.lambda().le(InviteRecord::getFirstFinishDate, Utils.Date.getEnd(pageWrap.getModel().getFirstFinishDate()));
            queryWrapper.ge(InviteRecord::getFirstFinishDate, Utils.Date.getStart(pageWrap.getModel().getFirstFinishDate()));
            queryWrapper.le(InviteRecord::getFirstFinishDate, Utils.Date.getEnd(pageWrap.getModel().getFirstFinishDate()));
        }
        queryWrapper.lambda().eq(pageWrap.getModel().getRewardIntegral() != null,InviteRecord::getRewardIntegral, pageWrap.getModel().getRewardIntegral());
        for(PageWrap.SortData sortData: pageWrap.getSorts()) {
            if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
                queryWrapper.orderByDesc(sortData.getProperty());
            } else {
                queryWrapper.orderByAsc(sortData.getProperty());
        queryWrapper.eq(pageWrap.getModel().getRewardIntegral() != null,InviteRecord::getRewardIntegral, pageWrap.getModel().getRewardIntegral());
        queryWrapper.orderByDesc(InviteRecord::getCreateDate);
        IPage<InviteRecord> result =inviteRecordMapper.selectPage(page, queryWrapper);
        if(result!=null && result.getRecords()!=null){
            for(InviteRecord model : result.getRecords()){
               model.setMemberName(StringUtils.defaultString(model.getMemberNickname(),"")+" / "
                       +StringUtils.defaultString(model.getMemberName(),"-")+" / "
                       +StringUtils.defaultString(model.getMemberPhone(),"-"));
               model.setRecName(StringUtils.defaultString(model.getRecNickname(),"")+" / "
                       +StringUtils.defaultString(model.getRecName(),"-")+" / "
                       +StringUtils.defaultString(model.getRecPhone(),"-"));
            }
        }
        return PageData.from(inviteRecordMapper.selectPage(page, queryWrapper));
        return PageData.from(result);
    }
    @Override
@@ -230,9 +304,6 @@
        QueryWrapper<InviteRecord> wrapper = new QueryWrapper<>(inviteRecord);
        return inviteRecordMapper.selectCount(wrapper);
    }