diff --git a/src/main/java/com/gaotao/modules/label/entity/PrintLabelRecord.java b/src/main/java/com/gaotao/modules/label/entity/PrintLabelRecord.java index 0963912..92dca40 100644 --- a/src/main/java/com/gaotao/modules/label/entity/PrintLabelRecord.java +++ b/src/main/java/com/gaotao/modules/label/entity/PrintLabelRecord.java @@ -8,6 +8,7 @@ import org.springframework.format.annotation.DateTimeFormat; import java.math.BigDecimal; import java.util.Date; +import java.util.Map; @Data @TableName("print_label_record") @@ -89,6 +90,17 @@ public class PrintLabelRecord { @TableField(exist = false) private String dateStr; - @TableField(exist = false) private String templateNo; + + private Integer printLabelType;// 0、两种标签;1、箱标签;2、产品标签 + + @TableField(exist = false) + private Map pictureMap; + + @TableField(exist = false) + private String printStr1; + @TableField(exist = false) + private String printStr2; + @TableField(exist = false) + private String printStr3; } diff --git a/src/main/java/com/gaotao/modules/label/service/impl/PrintLabelRecordServiceImpl.java b/src/main/java/com/gaotao/modules/label/service/impl/PrintLabelRecordServiceImpl.java index b6f9d0a..b9ab6b0 100644 --- a/src/main/java/com/gaotao/modules/label/service/impl/PrintLabelRecordServiceImpl.java +++ b/src/main/java/com/gaotao/modules/label/service/impl/PrintLabelRecordServiceImpl.java @@ -9,6 +9,8 @@ import com.gaotao.modules.app.entity.UserEntity; import com.gaotao.modules.label.entity.PrintLabelRecord; import com.gaotao.modules.label.mapper.PrintLabelRecordMapper; import com.gaotao.modules.label.service.PrintLabelRecordService; +import com.gaotao.modules.part.entity.ExternalPartPicture; +import com.gaotao.modules.part.service.ExternalPartPictureService; import com.gaotao.modules.sys.entity.SysUserEntity; import com.gaotao.modules.sys.service.SysMsgService; import lombok.extern.slf4j.Slf4j; @@ -19,12 +21,13 @@ import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.io.File; +import java.io.IOException; import java.math.BigDecimal; +import java.nio.file.Files; import java.time.LocalDate; import java.time.format.DateTimeFormatter; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; +import java.util.*; @Service @Slf4j @@ -33,6 +36,9 @@ public class PrintLabelRecordServiceImpl extends ServiceImpl pictureMap = new HashMap<>(); if ("Alpha/Hard Tag-Serials".equalsIgnoreCase(printLabelRecord.getCategory()) && "Y".equalsIgnoreCase(userEntity.getAutoSerialNumber())){ printLabelRecord.setCreateTime(new Date()); // 获取SN list = baseMapper.autoCreateSerialNumber(printLabelRecord, cartonCount.intValue()); - + // 获取 认证 + List pictureList = externalPartPictureService.lambdaQuery() + .eq(ExternalPartPicture::getPartNo, printLabelRecord.getPartNo()) + .eq(ExternalPartPicture::getSite, printLabelRecord.getSite()) + .eq(ExternalPartPicture::getTemplateNo, printLabelRecord.getTemplateNo()) + .eq(ExternalPartPicture::getPictureClassify, "ProPicture") + .list(); + for (ExternalPartPicture picture : pictureList) { + // 通过URL转Base64 + String pictureUrl = picture.getPictureUrl(); + File file = new File(pictureUrl); + try { + pictureMap.put(picture.getPicturePosition(),"data:image/png;base64,"+encodeFileToBase64(file)); + } catch (IOException e) { + throw new RuntimeException(e); + } + } } // 打印张数 for (int i = 1; i <= cartonCount.intValue(); i++) { @@ -94,7 +117,8 @@ public class PrintLabelRecordServiceImpl extends ServiceImpl selectPrintLabelRecordPage(PrintLabelRecord printLabelRecord, Integer no, Integer size) { Page page = new Page<>(no, size); - return baseMapper.selectPrintLabelRecordPage(page,printLabelRecord); + IPage iPage = baseMapper.selectPrintLabelRecordPage(page, printLabelRecord); + for (PrintLabelRecord record : iPage.getRecords()) { + if (!"Alpha/Hard Tag-Serials".equals(record.getCategory())){ + continue; + } + // 获取 认证 + List pictureList = externalPartPictureService.lambdaQuery() + .eq(ExternalPartPicture::getPartNo, record.getPartNo()) + .eq(ExternalPartPicture::getSite, record.getSite()) + .eq(ExternalPartPicture::getTemplateNo, record.getTemplateNo()) + .eq(ExternalPartPicture::getPictureClassify, "ProPicture") + .list(); + Map pictureMap = new HashMap<>(); + for (ExternalPartPicture picture : pictureList) { + // 通过URL转Base64 + String pictureUrl = picture.getPictureUrl(); + File file = new File(pictureUrl); + try { + pictureMap.put(picture.getPicturePosition(),"data:image/png;base64,"+encodeFileToBase64(file)); + } catch (IOException e) { + throw new RuntimeException(e); + } + } + record.setPictureMap(pictureMap); + } + return iPage; } } diff --git a/src/main/java/com/gaotao/modules/part/entity/ExternalPartCustomer.java b/src/main/java/com/gaotao/modules/part/entity/ExternalPartCustomer.java index 82b5ef5..c0afff8 100644 --- a/src/main/java/com/gaotao/modules/part/entity/ExternalPartCustomer.java +++ b/src/main/java/com/gaotao/modules/part/entity/ExternalPartCustomer.java @@ -91,4 +91,11 @@ public class ExternalPartCustomer { @TableField(exist = false) private Long itemNo; + + @TableField(exist = false) + private String printStr1; + @TableField(exist = false) + private String printStr2; + @TableField(exist = false) + private String printStr3; } diff --git a/src/main/java/com/gaotao/modules/part/entity/Part.java b/src/main/java/com/gaotao/modules/part/entity/Part.java index d72483f..e541602 100644 --- a/src/main/java/com/gaotao/modules/part/entity/Part.java +++ b/src/main/java/com/gaotao/modules/part/entity/Part.java @@ -69,4 +69,8 @@ public class Part { private String tradingMark; private Integer weightUmId; + + private String printStr1; + private String printStr2; + private String printStr3; } diff --git a/src/main/java/com/gaotao/modules/part/service/impl/PartServiceImpl.java b/src/main/java/com/gaotao/modules/part/service/impl/PartServiceImpl.java index 771ef83..b2ac453 100644 --- a/src/main/java/com/gaotao/modules/part/service/impl/PartServiceImpl.java +++ b/src/main/java/com/gaotao/modules/part/service/impl/PartServiceImpl.java @@ -93,6 +93,9 @@ public class PartServiceImpl extends ServiceImpl implements Pa .set(Part::getCartonWeight,part.getCartonWeight()) .set(Part::getTradingMark,part.getTradingMark()) .set(Part::getWeightUmId,part.getWeightUmId()) + .set(Part::getPrintStr1,part.getPrintStr1()) + .set(Part::getPrintStr2,part.getPrintStr2()) + .set(Part::getPrintStr3,part.getPrintStr3()) .update(); } diff --git a/src/main/resources/mapper/label/PrintLabelRecordMapper.xml b/src/main/resources/mapper/label/PrintLabelRecordMapper.xml index 8ce443b..6daba3e 100644 --- a/src/main/resources/mapper/label/PrintLabelRecordMapper.xml +++ b/src/main/resources/mapper/label/PrintLabelRecordMapper.xml @@ -30,7 +30,12 @@ p.carton_weight, p.packing_weight, wu.um_name as weight_um_name, - snl.date_str + snl.date_str, + plr.template_no, + plr.print_label_type, + print_str1, + print_str2, + print_str3 from print_label_Record plr left join part p on p.part_no = plr.part_no and p.site = plr.site left join customer c on c.site = plr.site and c.customer_no = plr.customer_no @@ -93,7 +98,12 @@ p.carton_weight, p.packing_weight, wu.um_name as weight_um_name, - snl.date_str + snl.date_str, + plr.template_no, + plr.print_label_type, + print_str1, + print_str2, + print_str3 from print_label_Record plr left join part p on p.part_no = plr.part_no and p.site = plr.site left join customer c on c.site = plr.site and c.customer_no = plr.customer_no diff --git a/src/main/resources/mapper/part/ExternalPartCustomerMapper.xml b/src/main/resources/mapper/part/ExternalPartCustomerMapper.xml index f3dbdba..c6ee3a5 100644 --- a/src/main/resources/mapper/part/ExternalPartCustomerMapper.xml +++ b/src/main/resources/mapper/part/ExternalPartCustomerMapper.xml @@ -40,7 +40,10 @@ p.carton_weight, p.packing_weight, p.trading_mark, - wu.um_name as weight_um_name + wu.um_name as weight_um_name, + p.print_str1, + p.print_str2, + p.print_str3 from part p left join external_part_customer epc on epc.site = p.site and epc.part_no = p.part_no left join customer c on epc.site = c.site and epc.customer_no = c.customer_no @@ -100,7 +103,10 @@ p.carton_weight, p.packing_weight, p.trading_mark, - wu.um_name as weight_um_name + wu.um_name as weight_um_name, + p.print_str1, + p.print_str2, + p.print_str3 from part p left join external_part_customer epc on epc.site = p.site and epc.part_no = p.part_no left join customer c on epc.site = c.site and epc.customer_no = c.customer_no diff --git a/src/main/resources/mapper/part/PartMapper.xml b/src/main/resources/mapper/part/PartMapper.xml index f865e3b..6f20a50 100644 --- a/src/main/resources/mapper/part/PartMapper.xml +++ b/src/main/resources/mapper/part/PartMapper.xml @@ -30,7 +30,10 @@ packing_weight, carton_weight, weight_um_id, - wu.um_name as weightUmName + wu.um_name as weightUmName, + print_str1, + print_str2, + print_str3 from part p left join unit u on p.um_id = u.um_id left join unit wu on p.um_id = wu.um_id @@ -82,7 +85,10 @@ packing_weight, carton_weight, weight_um_id, - wu.um_name as weightUmName + wu.um_name as weightUmName, + print_str1, + print_str2, + print_str3 from part p left join unit u on p.um_id = u.um_id left join unit wu on p.weight_um_id = wu.um_id