Commit 5570d26f authored by Allen Chen's avatar Allen Chen

commit

parent d5c9239f
...@@ -3,25 +3,25 @@ package org.ta.pddserver.config; ...@@ -3,25 +3,25 @@ package org.ta.pddserver.config;
public class PddAPIConfig { public class PddAPIConfig {
// 临沂海际韩国集运 生产环境参数 // 临沂海际韩国集运 生产环境参数
// 应用基础参数 // 应用基础参数
// public static final String CLIENT_ID = "8f5f3f9c92e847b2894fc9c0afce3d61"; public static final String CLIENT_ID = "8f5f3f9c92e847b2894fc9c0afce3d61";
// public static final String CLIENT_SECRET = "281d79ad5117d20a51efb9e7b0d5f7ee336399b0"; public static final String CLIENT_SECRET = "281d79ad5117d20a51efb9e7b0d5f7ee336399b0";
// // 基础API地址 // 基础API地址
// public static final String URL = "https://ark-api.pinduoduo.com/ark/router"; public static final String URL = "https://ark-api.pinduoduo.com/ark/router";
// // 工单API地址 // 工单API地址
// public static final String URL_GD = "https://gw-api.pinduoduo.com/api/router"; public static final String URL_GD = "https://gw-api.pinduoduo.com/api/router";
//
// // 基础API地址 // 基础API地址
public static final String BASE_URL = "https://gw-api.pinduoduo.com/api/router"; public static final String BASE_URL = "https://gw-api.pinduoduo.com/api/router";
// 临沂海际韩国集运 测试环境参数 // 临沂海际韩国集运 测试环境参数
// 应用基础参数 // 应用基础参数
public static final String CLIENT_ID = "d0217707e1194c46b57e696ac7619a06"; // public static final String CLIENT_ID = "d0217707e1194c46b57e696ac7619a06";
public static final String CLIENT_SECRET = "a5aba84483d8387030899f01276b06a194942470"; // public static final String CLIENT_SECRET = "a5aba84483d8387030899f01276b06a194942470";
// 基础API地址 // // 基础API地址
public static final String URL = "https://opengw-api.hutaojie.com/ark/router"; // public static final String URL = "https://opengw-api.hutaojie.com/ark/router";
// 工单API地址 // // 工单API地址
public static final String URL_GD = "https://opengw-api.hutaojie.com/api/router"; // public static final String URL_GD = "https://opengw-api.hutaojie.com/api/router";
......
...@@ -92,6 +92,9 @@ public class PddLocalController { ...@@ -92,6 +92,9 @@ public class PddLocalController {
@Resource @Resource
private PackageDetailImpl packageDetailImpl; private PackageDetailImpl packageDetailImpl;
@Resource
private TempStorageImpl tempStorageImpl;
/*集运单列表*/ /*集运单列表*/
@Operation( @Operation(
summary = "分页查询收到的集运单列表", summary = "分页查询收到的集运单列表",
...@@ -1575,7 +1578,7 @@ public class PddLocalController { ...@@ -1575,7 +1578,7 @@ public class PddLocalController {
// return JsonResponse.generateLocalCommonFailedResponse("-1", "获取快递终端信息异常"); // return JsonResponse.generateLocalCommonFailedResponse("-1", "获取快递终端信息异常");
// } // }
byte[] bytes = ImagePdfCollectGenerator.generatePdfWithCollectTextImage(orderCode, "拆包", "" + list.size() + "件"); byte[] bytes = ImagePdfCollectGenerator.generatePdQRfWithCollectTextImage(orderCode, "拆包", "" + list.size() + "件");
if (bytes == null) { if (bytes == null) {
...@@ -1606,7 +1609,7 @@ public class PddLocalController { ...@@ -1606,7 +1609,7 @@ public class PddLocalController {
// return JsonResponse.generateLocalCommonFailedResponse("-1", "获取快递终端信息异常"); // return JsonResponse.generateLocalCommonFailedResponse("-1", "获取快递终端信息异常");
// } // }
byte[] bytes = ImagePdfCollectGenerator.generatePdfWithCollectTextImage(orderCode, orderCode.startsWith("PT") ? "退运" : "出库", "" + mailDetailList.size() + "件"); byte[] bytes = ImagePdfCollectGenerator.generatePdQRfWithCollectTextImage(orderCode, orderCode.startsWith("PT") ? "退运" : "出库", "" + mailDetailList.size() + "件");
if (bytes == null) { if (bytes == null) {
...@@ -1663,7 +1666,8 @@ public class PddLocalController { ...@@ -1663,7 +1666,8 @@ public class PddLocalController {
List<PackageDetailEntity> list = packageDetailImpl.getByOrderCode(orderCode); List<PackageDetailEntity> list = packageDetailImpl.getByOrderCode(orderCode);
byte[] bytes = ImagePdfCollectGenerator.generatePdfWithCollectTextImage(orderCode + "-" + labelRequest.getMailNo(), typeString, "" + list.size() + "件"); // byte[] bytes = ImagePdfCollectGenerator.generatePdfWithCollectTextImage(orderCode + "-" + labelRequest.getMailNo(), typeString, "" + list.size() + "件");
byte[] bytes = ImagePdfCollectGenerator.generatePdQRfWithCollectTextImage(orderCode + "-" + labelRequest.getMailNo(), typeString, "" + list.size() + "件");
if (bytes == null) { if (bytes == null) {
return JsonResponse.generateLocalCommonFailedResponse("-1", "面单制作失败"); return JsonResponse.generateLocalCommonFailedResponse("-1", "面单制作失败");
...@@ -1767,7 +1771,62 @@ public class PddLocalController { ...@@ -1767,7 +1771,62 @@ public class PddLocalController {
return JsonResponse.generateLocalCommonSuccessResponse(map, ""); return JsonResponse.generateLocalCommonSuccessResponse(map, "");
} }
@PostMapping("/collectOrderAllInfo")
public Map<String, Object> collectOrderAllInfo(HttpServletRequest request, @RequestBody UnpackNoticeRequest unpackNoticeRequest) {
Map<String, Object> map = new HashMap<>();
String orderCode = unpackNoticeRequest.getOrderCode();
CollectOrderEntity collectOrderEntity = collectOrderImpl.getAllInfoByOrderCode(orderCode);
map.put("CollectOrder", collectOrderEntity);
CollectReceiverDetailEntity collectReceiver = collectReceiverDetailImpl.getInfoByOrderCode(orderCode);
map.put("CollectReceiverDetail", collectReceiver);
List<CollectOrderDetailResponse> list = collectOrderDetailImpl.getListByOrderCode(orderCode);
map.put("CollectOrderDetail", list);
List<CollectMailDetailEntity> list1 = collectMailDetailImpl.getListByOrderCode(orderCode);
map.put("CollectMailDetail", list1);
OutboundNoticeEntity noticeEntity = outboundNoticeImpl.getByOrderCode(orderCode);
map.put("OutboundNotice", noticeEntity);
List<LogOrderMailDetailIoEntity> list2 = logOrderMailDetailIoImpl.getOutByOrderCode(orderCode);
map.put("LogOrderMailDetailIo", list2);
UnpackNoticeEntity unpackNoticeEntity = unpackNoticeImpl.getByCode(orderCode);
map.put("UnpackNotice", unpackNoticeEntity);
List<UnpackMailDetailEntity> list3 = unpackMailDetailImpl.getListByCode(orderCode);
map.put("UnpackMailDetail", list3);
return JsonResponse.generateLocalCommonSuccessResponse(map, "");
}
/* 临时入库 */
@PostMapping("/tempOn")
public JSONObject tempOn(HttpServletRequest request, @RequestBody TempOnRequest tempOnRequest) {
TempStorageEntity tempStorageEntity = tempStorageImpl.getByMailNo(tempOnRequest.getMailNo());
if (tempStorageEntity == null) {
tempStorageEntity.setMailNo(tempOnRequest.getMailNo());
tempStorageEntity.setPlace(tempOnRequest.getPlace());
tempStorageImpl.save(tempStorageEntity);
} else {
tempStorageEntity.setPlace(tempOnRequest.getPlace());
tempStorageImpl.updateById(tempStorageEntity);
}
return JsonResponse.generateLocalCommonSuccessResponse(tempStorageEntity, "上架成功");
}
/* 临时入库 */
@PostMapping("/tempOff")
public JSONObject tempOff(HttpServletRequest request, @RequestBody TempOnRequest tempOnRequest) {
TempStorageEntity tempStorageEntity = tempStorageImpl.getByMailNo(tempOnRequest.getMailNo());
if (tempStorageEntity != null) {
tempStorageImpl.removeById(tempStorageEntity.getUid());
}
return JsonResponse.generateLocalCommonSuccessResponse(tempStorageEntity, "下架成功");
}
/* 临时入库 */
@PostMapping("/getTemp")
public JSONObject getTemp(HttpServletRequest request, @RequestBody TempOnRequest tempOnRequest) {
List<TempStorageEntity> list = tempStorageImpl.getListByMailNo(tempOnRequest.getMailNo());
return JsonResponse.generateLocalCommonSuccessResponse(list, "");
}
} }
package org.ta.pddserver.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
@TableName("temp_storage")
@Data
public class TempStorageEntity {
@TableId(value = "uid")
private String uid;
@TableField(value = "mailNo")
private String mailNo;
@TableField(value = "place")
private String place;
@TableField(value = "created")
private String created;
}
...@@ -7,6 +7,7 @@ import com.google.zxing.common.HybridBinarizer; ...@@ -7,6 +7,7 @@ import com.google.zxing.common.HybridBinarizer;
import com.google.zxing.oned.Code128Writer; import com.google.zxing.oned.Code128Writer;
import com.google.zxing.oned.Code39Writer; import com.google.zxing.oned.Code39Writer;
import com.google.zxing.oned.ITFWriter; import com.google.zxing.oned.ITFWriter;
import com.google.zxing.qrcode.QRCodeWriter;
import com.google.zxing.qrcode.decoder.ErrorCorrectionLevel; import com.google.zxing.qrcode.decoder.ErrorCorrectionLevel;
import javax.imageio.ImageIO; import javax.imageio.ImageIO;
...@@ -213,4 +214,25 @@ public class BarcodeUtils { ...@@ -213,4 +214,25 @@ public class BarcodeUtils {
Result result = new MultiFormatReader().decode(bitmap, hints); Result result = new MultiFormatReader().decode(bitmap, hints);
return result.getText(); return result.getText();
} }
public static byte[] generateQRCodeImage(String text, int width, int height) throws WriterException, IOException {
QRCodeWriter qrCodeWriter = new QRCodeWriter();
Map<EncodeHintType, Object> hints = new HashMap<>();
hints.put(EncodeHintType.CHARACTER_SET, "UTF-8"); // 字符集
hints.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.M); // 纠错等级
hints.put(EncodeHintType.MARGIN, 0);
hints.put(EncodeHintType.MIN_SIZE, new Dimension(100, 100)); // 设置最小尺寸为100x100像素
hints.put(EncodeHintType.MAX_SIZE, new Dimension(1200, 1200)); // 设置最大尺寸为1000x800像素
hints.put(EncodeHintType.CHARACTER_SET, "UTF-8"); // 设置字符编码
BitMatrix bitMatrix = qrCodeWriter.encode(text, BarcodeFormat.QR_CODE, width, height, hints);
// 4. 转换为BufferedImage
BufferedImage barcodeImage = toBufferedImage(bitMatrix, Color.BLACK, Color.WHITE);
// 6. 转为字节数组(PNG格式)
ByteArrayOutputStream baos = new ByteArrayOutputStream();
ImageIO.write(barcodeImage, "png", baos);
return baos.toByteArray();
}
} }
\ No newline at end of file
...@@ -42,6 +42,34 @@ public class ImagePdfCollectGenerator { ...@@ -42,6 +42,34 @@ public class ImagePdfCollectGenerator {
} }
} }
public static byte[] generatePdQRfWithCollectTextImage(String orderCode, String typeText, String numText) {
try {
// 1. 将文字转为图片(示例:韩文“안녕하세요,世界!”)
byte[] imageBytes = TextToImageUtils.commonQrCodeAndTextToImage(orderCode, typeText, numText);
// return imageBytes;
// 2. 初始化PDF
ByteArrayOutputStream pdfBaos = new ByteArrayOutputStream();
PdfWriter writer = new PdfWriter(pdfBaos);
PdfDocument pdfDoc = new PdfDocument(writer);
Document document = new Document(pdfDoc, new PageSize((int) (150 * 300 / 25.4), (int) (100 * 300 / 25.4)));
// 3. 将图片嵌入PDF
ImageData imageData = ImageDataFactory.create(imageBytes);
Image image = new Image(imageData);
// 设置图片在PDF中居中显示
image.setHorizontalAlignment(HorizontalAlignment.LEFT);
document.add(image);
// 4. 关闭文档
document.close();
return pdfBaos.toByteArray();
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
public static byte[] generateCode() throws Exception { public static byte[] generateCode() throws Exception {
ByteArrayOutputStream pdfBaos = new ByteArrayOutputStream(); ByteArrayOutputStream pdfBaos = new ByteArrayOutputStream();
......
...@@ -112,7 +112,7 @@ public class ImagePdfGenerator { ...@@ -112,7 +112,7 @@ public class ImagePdfGenerator {
continue; continue;
} }
// 1. 将文字转为图片(示例:韩文“안녕하세요,世界!”) // 1. 将文字转为图片(示例:韩文“안녕하세요,世界!”)
String code = "A" + i + "-" + i1 + "-" + i2 + "-" + i3; String code = "B" + i + "-" + i1 + "-" + i2 + "-" + i3;
byte[] imageBytes = TextToImageUtils.commonBarCodeToImage(code); byte[] imageBytes = TextToImageUtils.commonBarCodeToImage(code);
// 3. 将图片嵌入PDF // 3. 将图片嵌入PDF
......
...@@ -222,6 +222,58 @@ public class TextToImageUtils { ...@@ -222,6 +222,58 @@ public class TextToImageUtils {
return baos.toByteArray(); return baos.toByteArray();
} }
public static byte[] commonQrCodeAndTextToImage( String mailCode, String typeText, String numText
) throws Exception {
int width = 1770;
int height = 1180;
int startX = 0;
int startY = 0;
// 1. 创建 BufferedImage 作为画布
BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
System.out.println("width = " + width + ", height = " + height);
Graphics2D g2d = image.createGraphics();
// 设置绘图属性(抗锯齿、渲染质量等)
g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); // 文字抗锯齿
g2d.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_LCD_HRGB); // 文字平滑
g2d.setRenderingHint(RenderingHints.KEY_RENDERING, RenderingHints.VALUE_RENDER_QUALITY); // 渲染质量
g2d.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_ON);
// 2. 设置背景为白色
g2d.setColor(Color.white);
g2d.fillRect(0, 0, width, height);
g2d.setColor(Color.BLACK);
// 集运单号
Font font0 = Font.createFont(Font.TRUETYPE_FONT, new FileInputStream("./zh-gb.ttf")).deriveFont((float) 80);
g2d.setFont(font0);
FontMetrics metrics = g2d.getFontMetrics();
int x = (width - metrics.stringWidth(mailCode)) / 2; // 水平居中
// g2d.drawString(mailCode, startX + 400, 250);
g2d.drawString(mailCode, startX + 400, 1000);
byte[] code4Bytes = BarcodeUtils.generateQRCodeImage(mailCode, 550, 550);
ByteArrayInputStream code4BytesIs = new ByteArrayInputStream(code4Bytes);
BufferedImage code4Img = ImageIO.read(code4BytesIs);
g2d.drawImage(code4Img, startX + 130, startY + 310, 550, 550, null);
if (typeText != null) {
g2d.drawString(typeText, startX + 50, 100);
}
if (numText != null) {
g2d.drawString(numText, startX + 1500, 100);
}
g2d.dispose();
// 6. 将图片转为字节数组(PNG格式)
ByteArrayOutputStream baos = new ByteArrayOutputStream();
ImageIO.write(image, "png", baos);
return baos.toByteArray();
}
public static byte[] commonBarCodeToImage( String mailCode public static byte[] commonBarCodeToImage( String mailCode
) throws Exception { ) throws Exception {
......
...@@ -15,4 +15,5 @@ public interface CollectOrderDetailMapper extends BaseMapper<CollectOrderDetailE ...@@ -15,4 +15,5 @@ public interface CollectOrderDetailMapper extends BaseMapper<CollectOrderDetailE
@Select("SELECT `uid`, `orderCode`, `orderSn`, `logisticsOrderCode`, `itemId`, `itemName`, `categoryName`, `itemQuantity`, `weightTotal`, `actualAmount`, `productName`, `exportDecAmount` FROM `collect_order_detail` WHERE `orderCode` = #{orderCode}; ") @Select("SELECT `uid`, `orderCode`, `orderSn`, `logisticsOrderCode`, `itemId`, `itemName`, `categoryName`, `itemQuantity`, `weightTotal`, `actualAmount`, `productName`, `exportDecAmount` FROM `collect_order_detail` WHERE `orderCode` = #{orderCode}; ")
List<CollectOrderDetailResponse> getListByOrderCode(String orderCode); List<CollectOrderDetailResponse> getListByOrderCode(String orderCode);
} }
...@@ -27,7 +27,7 @@ public interface CollectOrderMapper extends BaseMapper<CollectOrderEntity> { ...@@ -27,7 +27,7 @@ public interface CollectOrderMapper extends BaseMapper<CollectOrderEntity> {
@Select("SELECT `uid`, `orderCode`, `itemQuantityTotal`, `segmentCode`, `consoType` FROM `collect_order` WHERE `orderCode` = #{orderCode} AND `status` = ${status}") @Select("SELECT `uid`, `orderCode`, `itemQuantityTotal`, `segmentCode`, `consoType` FROM `collect_order` WHERE `orderCode` = #{orderCode} AND `status` = ${status}")
List<CollectOrderListResponse> getList(@Param("orderCode") String orderCode, @Param("status") int status); List<CollectOrderListResponse> getList(@Param("orderCode") String orderCode, @Param("status") int status);
@Select("SELECT `uid`, `orderCode`, `itemQuantityTotal`, `tradeOrderActualAmountTotal`,`segmentCode`, `consoType`, `deliveryType` FROM `collect_order` WHERE `orderCode` = #{orderCode};") @Select("SELECT `uid`, `orderCode`, `itemQuantityTotal`, `tradeOrderActualAmountTotal`,`segmentCode`, `consoType`, `deliveryType`, `created` FROM `collect_order` WHERE `orderCode` = #{orderCode};")
CollectOrderInfoResponse getInfoByOrderCode(@Param("orderCode") String orderCode); CollectOrderInfoResponse getInfoByOrderCode(@Param("orderCode") String orderCode);
@Select("SELECT COUNT(*) FROM (SELECT a.`uid` FROM `collect_order` a LEFT JOIN `collect_mail_detail` b ON a.`orderCode` = b.`orderCode` WHERE a.`orderCode` LIKE '%${orderCode}%' AND a.`status` LIKE '%${status}%' ${str} GROUP BY a.`uid`) t; ") @Select("SELECT COUNT(*) FROM (SELECT a.`uid` FROM `collect_order` a LEFT JOIN `collect_mail_detail` b ON a.`orderCode` = b.`orderCode` WHERE a.`orderCode` LIKE '%${orderCode}%' AND a.`status` LIKE '%${status}%' ${str} GROUP BY a.`uid`) t; ")
......
...@@ -28,4 +28,7 @@ public interface OutboundNoticeMapper extends BaseMapper<OutboundNoticeEntity> { ...@@ -28,4 +28,7 @@ public interface OutboundNoticeMapper extends BaseMapper<OutboundNoticeEntity> {
@Update("UPDATE `outbound_notice` SET `status` = ${status} WHERE `orderCode` = #{orderCode} ") @Update("UPDATE `outbound_notice` SET `status` = ${status} WHERE `orderCode` = #{orderCode} ")
void updateStatusByOrderCode(@Param("orderCode") String orderCode, @Param("status") int status); void updateStatusByOrderCode(@Param("orderCode") String orderCode, @Param("status") int status);
@Select("SELECT * FROM `outbound_notice` WHERE `orderCode` = #{orderCode}")
OutboundNoticeEntity findByOrderCode(String orderCode);
} }
package org.ta.pddserver.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.*;
import org.ta.pddserver.entity.TempStorageEntity;
import java.util.List;
@Mapper
public interface TempStorageMapper extends BaseMapper<TempStorageEntity> {
@Select("SELECT * FROM `temp_storage` WHERE `mailNo` LIKE '%${mailNo}%';")
List<TempStorageEntity> findListByMailNo(@Param("mailNo") String mailNo);
@Select("SELECT * FROM `temp_storage` WHERE `mailNo` = #{mailNo};")
TempStorageEntity findByMailNo(@Param("mailNo") String mailNo);
@Delete("DELETE FROM `temp_storage` WHERE `mailNo` IN ${ids}")
void storageDel(@Param("ids") String ids);
}
package org.ta.pddserver.model.api.request;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
@Data
public class TempOnRequest {
@Schema(
description = "运单号",
example = "P12345678",
defaultValue = "",
requiredMode = Schema.RequiredMode.REQUIRED // 必填
)
private String mailNo;
@Schema(
description = "区域位置",
example = "P12345678",
defaultValue = "",
requiredMode = Schema.RequiredMode.NOT_REQUIRED // 必填
)
private String place;
}
...@@ -2,6 +2,8 @@ package org.ta.pddserver.model.api.response; ...@@ -2,6 +2,8 @@ package org.ta.pddserver.model.api.response;
import lombok.Data; import lombok.Data;
import java.util.Date;
@Data @Data
public class CollectOrderInfoResponse { public class CollectOrderInfoResponse {
...@@ -19,4 +21,6 @@ public class CollectOrderInfoResponse { ...@@ -19,4 +21,6 @@ public class CollectOrderInfoResponse {
private String deliveryType; private String deliveryType;
private String created;
} }
package org.ta.pddserver.service;
import com.baomidou.mybatisplus.extension.service.IService;
import org.ta.pddserver.entity.TempStorageEntity;
public interface TempStorageService extends IService<TempStorageEntity> {
}
...@@ -17,4 +17,5 @@ public class CollectOrderDetailImpl extends ServiceImpl<CollectOrderDetailMapper ...@@ -17,4 +17,5 @@ public class CollectOrderDetailImpl extends ServiceImpl<CollectOrderDetailMapper
public List<CollectOrderDetailResponse> getListByOrderCode(String orderCode) { public List<CollectOrderDetailResponse> getListByOrderCode(String orderCode) {
return baseMapper.getListByOrderCode(orderCode); return baseMapper.getListByOrderCode(orderCode);
} }
} }
\ No newline at end of file
...@@ -33,4 +33,8 @@ public class OutboundNoticeImpl extends ServiceImpl<OutboundNoticeMapper, Outbou ...@@ -33,4 +33,8 @@ public class OutboundNoticeImpl extends ServiceImpl<OutboundNoticeMapper, Outbou
public void updateStatusByOrderCode(String orderCode, int status) { public void updateStatusByOrderCode(String orderCode, int status) {
baseMapper.updateStatusByOrderCode(orderCode, status); baseMapper.updateStatusByOrderCode(orderCode, status);
} }
public OutboundNoticeEntity getByOrderCode(String orderCode) {
return this.baseMapper.findByOrderCode(orderCode);
}
} }
\ No newline at end of file
package org.ta.pddserver.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import org.ta.pddserver.entity.StorageEntity;
import org.ta.pddserver.entity.TempStorageEntity;
import org.ta.pddserver.mapper.TempStorageMapper;
import org.ta.pddserver.service.TempStorageService;
import java.util.List;
@Service
public class TempStorageImpl extends ServiceImpl<TempStorageMapper, TempStorageEntity> implements TempStorageService {
public List<TempStorageEntity> getListByMailNo(String mailNo) {
return this.baseMapper.findListByMailNo(mailNo);
}
public TempStorageEntity getByMailNo(String mailNo) {
return this.baseMapper.findByMailNo(mailNo);
}
}
\ No newline at end of file
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