Commit 87c53d7d authored by shiyu's avatar shiyu

批量创建打印的二维码,透明的小程序二维码

parent d48d7902
package com.wwdz.ch.db.dao; package com.wwdz.ch.db.dao;
import com.wwdz.ch.db.domain.ItemTagQrCode; import com.wwdz.ch.db.domain.ItemTagQrCode;
import com.wwdz.ch.db.dto.request.ItemTagQrCodeRequestDto;
import java.util.List;
public interface ItemTagQrCodeDao { public interface ItemTagQrCodeDao {
...@@ -11,10 +14,11 @@ public interface ItemTagQrCodeDao { ...@@ -11,10 +14,11 @@ public interface ItemTagQrCodeDao {
*/ */
long insert(ItemTagQrCode itemTagQrCode); long insert(ItemTagQrCode itemTagQrCode);
boolean update(ItemTagQrCode itemTagQrCode); boolean update(ItemTagQrCode itemTagQrCode);
boolean updateByPrimaryKey(ItemTagQrCode itemTagQrCode); boolean updateByPrimaryKey(ItemTagQrCode itemTagQrCode);
ItemTagQrCode findByCode(String code); ItemTagQrCode findByCode(String code);
List<ItemTagQrCode> findByPage(ItemTagQrCodeRequestDto dto);
} }
...@@ -7,7 +7,7 @@ import java.util.Date; ...@@ -7,7 +7,7 @@ import java.util.Date;
import java.util.List; import java.util.List;
@Data @Data
public class ItemTagQrCodeRequestDto implements Entity { public class ItemTagQrCodeRequestDto extends BaseRequestDto implements Entity {
private Long userId; private Long userId;
......
package com.wwdz.ch.db.impl; package com.wwdz.ch.db.impl;
import com.github.pagehelper.PageHelper;
import com.wwdz.ch.db.dao.ItemTagQrCodeDao; import com.wwdz.ch.db.dao.ItemTagQrCodeDao;
import com.wwdz.ch.db.domain.ItemTagQrCode; import com.wwdz.ch.db.domain.ItemTagQrCode;
import com.wwdz.ch.db.domain.ItemTagQrCodeExample; import com.wwdz.ch.db.domain.ItemTagQrCodeExample;
import com.wwdz.ch.db.dto.request.ItemTagQrCodeRequestDto;
import com.wwdz.ch.db.mapper.ItemTagQrCodeMapper; import com.wwdz.ch.db.mapper.ItemTagQrCodeMapper;
import com.xxdxxs.db.component.JdbcHelper;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository; import org.springframework.stereotype.Repository;
import java.util.List;
@Repository @Repository
public class ItemTagQrCodeDaoImpl implements ItemTagQrCodeDao { public class ItemTagQrCodeDaoImpl implements ItemTagQrCodeDao {
...@@ -40,4 +45,17 @@ public class ItemTagQrCodeDaoImpl implements ItemTagQrCodeDao { ...@@ -40,4 +45,17 @@ public class ItemTagQrCodeDaoImpl implements ItemTagQrCodeDao {
criteria.andCodeEqualTo(code); criteria.andCodeEqualTo(code);
return itemTagQrCodeMapper.selectOneByExample(example); return itemTagQrCodeMapper.selectOneByExample(example);
} }
@Override
public List<ItemTagQrCode> findByPage(ItemTagQrCodeRequestDto dto) {
ItemTagQrCodeExample example = new ItemTagQrCodeExample();
ItemTagQrCodeExample.Criteria criteria = example.createCriteria();
JdbcHelper.ifPresent(dto.getCode(), criteria :: andCodeEqualTo);
JdbcHelper.ifPresent(dto.getCategoryId(), criteria :: andCategoryIdEqualTo);
JdbcHelper.ifPresent(dto.getId(), criteria :: andIdGreaterThanOrEqualTo);
example.setOrderByClause("id ASC");
PageHelper.startPage(dto.getPage(), dto.getLimit());
return itemTagQrCodeMapper.selectByExample(example);
}
} }
...@@ -10,6 +10,7 @@ import com.wwdz.ch.core.entity.SupplierItemVo; ...@@ -10,6 +10,7 @@ import com.wwdz.ch.core.entity.SupplierItemVo;
import com.wwdz.ch.core.storage.QiniuStorage; import com.wwdz.ch.core.storage.QiniuStorage;
import com.wwdz.ch.core.type.Result; import com.wwdz.ch.core.type.Result;
import com.wwdz.ch.core.util.*; import com.wwdz.ch.core.util.*;
import com.wwdz.ch.core.util.UUID;
import com.wwdz.ch.db.dao.CategoryDao; import com.wwdz.ch.db.dao.CategoryDao;
import com.wwdz.ch.db.dao.ItemTagQrCodeDao; import com.wwdz.ch.db.dao.ItemTagQrCodeDao;
import com.wwdz.ch.db.dao.distribution.SupplierItemDao; import com.wwdz.ch.db.dao.distribution.SupplierItemDao;
...@@ -31,12 +32,15 @@ import org.springframework.beans.factory.annotation.Autowired; ...@@ -31,12 +32,15 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils; import org.springframework.util.CollectionUtils;
import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.Date; import java.net.URL;
import java.util.HashMap; import java.nio.file.Files;
import java.util.Map; import java.nio.file.Path;
import java.util.Objects; import java.nio.file.Paths;
import java.nio.file.StandardCopyOption;
import java.util.*;
import java.util.stream.IntStream; import java.util.stream.IntStream;
import java.util.stream.Stream; import java.util.stream.Stream;
...@@ -174,4 +178,34 @@ public class ItemTagQrCodeServiceImpl implements ItemTagQrCodeService { ...@@ -174,4 +178,34 @@ public class ItemTagQrCodeServiceImpl implements ItemTagQrCodeService {
} }
return Result.failed(); return Result.failed();
} }
@Override
public Result downloadQRCode(ItemTagQrCodeRequestDto dto) {
try {
List<ItemTagQrCode> itemTagQrCodeList = itemTagQrCodeDao.findByPage(dto);
String destinationFolder = "/Users/xxdxxs/Desktop/" + dto.getCategoryName();
int i = 1;
for (ItemTagQrCode itemTagQrCode : itemTagQrCodeList) {
String imageUrl = itemTagQrCode.getQrCode();
String fileName = itemTagQrCode.getCategoryName() + i + "." + MediaTypeEnum.IMAGE_PNG.getExt();
downloadImage(imageUrl, destinationFolder, fileName);
i++;
}
return Result.success();
} catch (Exception e) {
logger.error("下载上传的标签二维码{}", e);
}
return Result.failed();
}
public static void downloadImage(String imageUrl, String destinationFolder, String fileName) throws IOException {
URL url = new URL(imageUrl);
try (InputStream in = url.openStream()) {
Path destinationPath = Paths.get(destinationFolder, fileName);
Files.copy(in, destinationPath, StandardCopyOption.REPLACE_EXISTING);
}
}
} }
...@@ -27,4 +27,6 @@ public interface ItemTagQrCodeService { ...@@ -27,4 +27,6 @@ public interface ItemTagQrCodeService {
* @return * @return
*/ */
Result bindItem(ItemTagQrCodeRequestDto dto); Result bindItem(ItemTagQrCodeRequestDto dto);
Result downloadQRCode(ItemTagQrCodeRequestDto dto);
} }
...@@ -89,12 +89,12 @@ public class WxPayServiceTest { ...@@ -89,12 +89,12 @@ public class WxPayServiceTest {
@Test @Test
public void refund() { public void refund() {
List<String> list = Arrays.asList("DA2411192041343155076"); List<String> list = Arrays.asList("DA2411291619274673652");
list.forEach(orderId ->{ list.forEach(orderId ->{
DistributionOrderRequestDto dto = new DistributionOrderRequestDto(); DistributionOrderRequestDto dto = new DistributionOrderRequestDto();
dto.setDistributionOrderId(orderId); dto.setDistributionOrderId(orderId);
dto.setAmount("24.9"); dto.setAmount("94.8");
dto.setRefundPrice("24.9"); dto.setRefundPrice("94.8");
Result result = wxPayServiceApi.refund(dto); Result result = wxPayServiceApi.refund(dto);
logger.info("申请微信支付退款:{}", result); logger.info("申请微信支付退款:{}", result);
}); });
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment