diff --git a/mall-common/src/main/java/com/suisung/mall/common/modules/store/ShopStorePrinterLog.java b/mall-common/src/main/java/com/suisung/mall/common/modules/store/ShopStorePrinterLog.java new file mode 100644 index 00000000..0220fec2 --- /dev/null +++ b/mall-common/src/main/java/com/suisung/mall/common/modules/store/ShopStorePrinterLog.java @@ -0,0 +1,71 @@ +package com.suisung.mall.common.modules.store; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +import java.io.Serializable; +import java.util.Date; + +/** + *

+ * 门店打票机表 + *

+ * + * @author panjunjie + * @since 2024-10-28 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@TableName("shop_store_printer") +@ApiModel(value = "ShopStorePrinter对象", description = "门店打票机表") +public class ShopStorePrinterLog implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "日志自增ID") + @TableId(value = "log_id", type = IdType.INPUT) + private Long log_id; + + @ApiModelProperty(value = "打印分类") + private Integer category; + + @ApiModelProperty(value = "门店ID") + private Integer store_id; + + @ApiModelProperty(value = "订单ID") + private String order_id; + + @ApiModelProperty(value = "打印模版ID") + private Long template_id; + + @ApiModelProperty(value = "模版字符串") + private String template_value; + + @ApiModelProperty(value = "模版渲染数据值") + private String template_data; + + @ApiModelProperty(value = "最终打印的内容") + private String print_content; + + @ApiModelProperty(value = "状态:1-有效;2-无效;") + private Integer status; + + @ApiModelProperty(value = "新增用户ID") + private Integer created_by; + + @ApiModelProperty(value = "更新用户ID") + private Integer updated_by; + + @ApiModelProperty(value = "新增时间") + private Date created_at; + + @ApiModelProperty(value = "修改时间") + private Date updated_at; +} diff --git a/mall-common/src/main/java/com/suisung/mall/common/utils/FreeMakerUtils.java b/mall-common/src/main/java/com/suisung/mall/common/utils/FreeMakerUtils.java index ef00459a..90877d3c 100644 --- a/mall-common/src/main/java/com/suisung/mall/common/utils/FreeMakerUtils.java +++ b/mall-common/src/main/java/com/suisung/mall/common/utils/FreeMakerUtils.java @@ -48,13 +48,12 @@ public class FreeMakerUtils { } catch (Exception e) { log.error(e.getMessage(), e); return null; -// throw new RuntimeException(e); } finally { if (stringWriter != null) { try { stringWriter.close(); } catch (IOException e) { -// throw new RuntimeException(e); + log.error(e.getMessage(), e); return null; } } diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/store/controller/admin/ShopStorePrinterController.java b/mall-shop/src/main/java/com/suisung/mall/shop/store/controller/admin/ShopStorePrinterController.java index 231f2375..7df8918f 100644 --- a/mall-shop/src/main/java/com/suisung/mall/shop/store/controller/admin/ShopStorePrinterController.java +++ b/mall-shop/src/main/java/com/suisung/mall/shop/store/controller/admin/ShopStorePrinterController.java @@ -3,7 +3,6 @@ package com.suisung.mall.shop.store.controller.admin; import com.suisung.mall.common.api.CommonResult; import com.suisung.mall.common.modules.store.ShopStorePrinter; import com.suisung.mall.shop.store.service.ShopStorePrinterService; -import com.suisung.mall.shop.store.utis.FeieUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/store/controller/admin/ShopStorePrinterTemplateController.java b/mall-shop/src/main/java/com/suisung/mall/shop/store/controller/admin/ShopStorePrinterTemplateController.java index 82e0a0b1..f500fb9e 100644 --- a/mall-shop/src/main/java/com/suisung/mall/shop/store/controller/admin/ShopStorePrinterTemplateController.java +++ b/mall-shop/src/main/java/com/suisung/mall/shop/store/controller/admin/ShopStorePrinterTemplateController.java @@ -1,8 +1,6 @@ package com.suisung.mall.shop.store.controller.admin; import com.suisung.mall.common.api.CommonResult; -import com.suisung.mall.common.modules.store.ShopStorePrinterRegion; -import com.suisung.mall.shop.store.service.ShopStorePrinterRegionService; import com.suisung.mall.shop.store.service.ShopStorePrinterTemplateService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/store/mapper/ShopStorePrinterLogMapper.java b/mall-shop/src/main/java/com/suisung/mall/shop/store/mapper/ShopStorePrinterLogMapper.java new file mode 100644 index 00000000..5f98630f --- /dev/null +++ b/mall-shop/src/main/java/com/suisung/mall/shop/store/mapper/ShopStorePrinterLogMapper.java @@ -0,0 +1,18 @@ +package com.suisung.mall.shop.store.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.suisung.mall.common.modules.store.ShopStorePrinterLog; +import org.springframework.stereotype.Repository; + +/** + *

+ * 店铺打票机 mapper 接口 + *

+ * + * @author panjunjie + * @since 2024-10-28 + */ + +@Repository +public interface ShopStorePrinterLogMapper extends BaseMapper{ +} diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/store/mapper/ShopStorePrinterTemplateMapper.java b/mall-shop/src/main/java/com/suisung/mall/shop/store/mapper/ShopStorePrinterTemplateMapper.java index df704205..7bfbb964 100644 --- a/mall-shop/src/main/java/com/suisung/mall/shop/store/mapper/ShopStorePrinterTemplateMapper.java +++ b/mall-shop/src/main/java/com/suisung/mall/shop/store/mapper/ShopStorePrinterTemplateMapper.java @@ -1,16 +1,9 @@ package com.suisung.mall.shop.store.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.suisung.mall.common.modules.store.ShopStorePrinter; import com.suisung.mall.common.modules.store.ShopStorePrinterTemplate; -import com.suisung.mall.common.pojo.vo.ShopStorePrinterVO; -import io.lettuce.core.dynamic.annotation.Param; import org.springframework.stereotype.Repository; -import java.util.Map; - /** *

* 店铺打票机 mapper 接口 diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/store/service/ShopStorePrinterLogService.java b/mall-shop/src/main/java/com/suisung/mall/shop/store/service/ShopStorePrinterLogService.java new file mode 100644 index 00000000..b0490cdd --- /dev/null +++ b/mall-shop/src/main/java/com/suisung/mall/shop/store/service/ShopStorePrinterLogService.java @@ -0,0 +1,17 @@ +package com.suisung.mall.shop.store.service; + +import com.suisung.mall.common.modules.store.ShopStorePrinterLog; +import com.suisung.mall.core.web.service.IBaseService; + +public interface ShopStorePrinterLogService extends IBaseService { + + /** + * 新增一个打票机打印日志 + * + * @param record + * @return + */ + Boolean insertShopStorePrinterLog(ShopStorePrinterLog record); + +} + diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/store/service/impl/ShopStorePrinterLogServiceImpl.java b/mall-shop/src/main/java/com/suisung/mall/shop/store/service/impl/ShopStorePrinterLogServiceImpl.java new file mode 100644 index 00000000..a5a49da0 --- /dev/null +++ b/mall-shop/src/main/java/com/suisung/mall/shop/store/service/impl/ShopStorePrinterLogServiceImpl.java @@ -0,0 +1,63 @@ +package com.suisung.mall.shop.store.service.impl; + +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.NumberUtil; +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.suisung.mall.common.api.CommonResult; +import com.suisung.mall.common.api.StateCode; +import com.suisung.mall.common.constant.ConstantError; +import com.suisung.mall.common.domain.UserDto; +import com.suisung.mall.common.modules.store.ShopStorePrinter; +import com.suisung.mall.common.modules.store.ShopStorePrinterLog; +import com.suisung.mall.common.modules.store.ShopStorePrinterTemplate; +import com.suisung.mall.common.pojo.vo.ShopStoreOrderProductPrintVO; +import com.suisung.mall.common.pojo.vo.ShopStorePrinterVO; +import com.suisung.mall.common.utils.DateTimeUtils; +import com.suisung.mall.common.utils.FreeMakerUtils; +import com.suisung.mall.core.web.service.impl.BaseServiceImpl; +import com.suisung.mall.shop.order.service.ShopOrderBaseService; +import com.suisung.mall.shop.store.mapper.ShopStorePrinterLogMapper; +import com.suisung.mall.shop.store.mapper.ShopStorePrinterMapper; +import com.suisung.mall.shop.store.service.ShopStorePrinterLogService; +import com.suisung.mall.shop.store.service.ShopStorePrinterService; +import com.suisung.mall.shop.store.service.ShopStorePrinterTemplateService; +import com.suisung.mall.shop.store.utis.FeieUtil; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.math.BigDecimal; +import java.time.LocalDateTime; +import java.util.*; + +import static com.suisung.mall.common.utils.ContextUtil.getCurrentUser; + + +@Service +public class ShopStorePrinterLogServiceImpl extends BaseServiceImpl implements ShopStorePrinterLogService { + + private static final Logger logger = LoggerFactory.getLogger(ShopStorePrinterLogServiceImpl.class); + @Autowired + private ShopStorePrinterMapper shopStorePrinterMapper; + + @Override + public Boolean insertShopStorePrinterLog(ShopStorePrinterLog record) { + if (record == null) { + return false; + } + + if (record.getStore_id() == null || + StrUtil.isBlank(record.getOrder_id()) || + StrUtil.isBlank(record.getTemplate_value()) || + StrUtil.isBlank(record.getPrint_content())) { + return false; + } + + return add(record); + } +} diff --git a/mall-shop/src/main/java/com/suisung/mall/shop/store/service/impl/ShopStorePrinterModelServiceImpl.java b/mall-shop/src/main/java/com/suisung/mall/shop/store/service/impl/ShopStorePrinterModelServiceImpl.java index b39ec0b1..f5671335 100644 --- a/mall-shop/src/main/java/com/suisung/mall/shop/store/service/impl/ShopStorePrinterModelServiceImpl.java +++ b/mall-shop/src/main/java/com/suisung/mall/shop/store/service/impl/ShopStorePrinterModelServiceImpl.java @@ -4,7 +4,7 @@ import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.suisung.mall.common.api.CommonResult; -import com.suisung.mall.common.modules.store.ShopStorePrinter; +import com.suisung.mall.common.domain.UserDto; import com.suisung.mall.common.modules.store.ShopStorePrinterModel; import com.suisung.mall.core.web.service.impl.BaseServiceImpl; import com.suisung.mall.shop.store.mapper.ShopStorePrinterModelMapper; @@ -14,6 +14,8 @@ import org.springframework.stereotype.Service; import java.util.Date; import java.util.List; +import static com.suisung.mall.common.utils.ContextUtil.getCurrentUser; + @Service public class ShopStorePrinterModelServiceImpl extends BaseServiceImpl implements ShopStorePrinterModelService { @@ -25,14 +27,14 @@ public class ShopStorePrinterModelServiceImpl extends BaseServiceImpl queryWrapper= new QueryWrapper<>(); + QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.orderByAsc("model_id"); - if (count != null || count > 0) { + if (count != null || count > 0) { queryWrapper.last("limit " + count); } List recordList = find(queryWrapper); @@ -57,18 +59,23 @@ public class ShopStorePrinterModelServiceImpl extends BaseServiceImpl queryWrapper = new QueryWrapper<>(); queryWrapper.eq("model_name", record.getModel_name()); ShopStorePrinterModel existRecord = getOne(queryWrapper); - if (existRecord!=null && existRecord.getModel_id() > 0) { + if (existRecord != null && existRecord.getModel_id() > 0) { return CommonResult.success("打票机型号已添加,请勿重复操作"); } - if (add(record)){ + if (add(record)) { return CommonResult.success(); } @@ -78,21 +85,25 @@ public class ShopStorePrinterModelServiceImpl extends BaseServiceImpl implements ShopStorePrinterRegionService { @@ -41,10 +44,14 @@ public class ShopStorePrinterRegionServiceImpl extends BaseServiceImpl queryWrapper = new QueryWrapper<>(); queryWrapper.eq("region", record.getRegion()); @@ -63,13 +70,18 @@ public class ShopStorePrinterRegionServiceImpl extends BaseServiceImpl shopStorePrinterPageList(String keyword, Integer pageNum, Integer pageSize) { Page page = new Page(); @@ -333,7 +339,7 @@ public class ShopStorePrinterServiceImpl extends BaseServiceImpl binding = shopOrderBaseService.getOrderPrintInfo(orderId, StateCode.ORDER_PAID_STATE_YES); if (binding == null) { - logger.info(orderId+"订单信息无法获取,无法打印小票。"); + logger.info("订单{}信息无法获取,无法打印小票。", orderId); return false; } @@ -342,7 +348,7 @@ public class ShopStorePrinterServiceImpl extends BaseServiceImpl printerList = selectPrinterList(storeId); if (CollUtil.isEmpty(printerList)) { // 店铺没有打印机,不再往下执行打印工作 - logger.info(storeId+"店铺未添加打票机,无法打印小票。"); + logger.info("店铺{}未添加打票机,无法打印小票。", storeId); return false; } @@ -350,14 +356,14 @@ public class ShopStorePrinterServiceImpl extends BaseServiceImpl) binding.get("order_items"), 18, 6, 8); if(StrUtil.isBlank(order_items_tmpl)) { - logger.info(orderId+"订单详情列表模版渲染异常,无法打印小票。"); + logger.info("订单{}详情列表模版渲染异常,无法打印小票。", orderId); return false; } binding.put("order_items_tmpl", order_items_tmpl); @@ -365,18 +371,27 @@ public class ShopStorePrinterServiceImpl extends BaseServiceImpl