From 1f45bc1ec6dcaa24b8a8af17a43c87fc3bab0a5a Mon Sep 17 00:00:00 2001 From: sxu <602087911@qq.com> Date: Mon, 19 May 2025 18:45:50 +0800 Subject: [PATCH] =?UTF-8?q?=E7=94=B5=E5=AD=90=E5=88=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/MktCouponTmplBackMapper.java | 29 +++++ .../coupon/model/MktCouponTmplBack.java | 116 ++++++++++++++++++ .../coupon/service/MktCouponService.java | 4 +- .../service/MktCouponTmplBackService.java | 14 +++ .../service/impl/MktCouponServiceImpl.java | 10 +- .../impl/MktCouponTmplBackServiceImpl.java | 72 +++++++++++ .../{ => coupon}/vo/MktCouponMobileVO.java | 2 +- .../{ => coupon}/vo/MktCouponTmplBackVO.java | 2 +- .../marketing/{ => coupon}/vo/MktGroupVo.java | 3 +- .../marketing/MktCouponTmplBackMapper.xml | 25 ++++ 10 files changed, 268 insertions(+), 9 deletions(-) create mode 100644 bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/coupon/mapper/MktCouponTmplBackMapper.java create mode 100644 bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/coupon/model/MktCouponTmplBack.java create mode 100644 bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/coupon/service/MktCouponTmplBackService.java create mode 100644 bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/coupon/service/impl/MktCouponTmplBackServiceImpl.java rename bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/{ => coupon}/vo/MktCouponMobileVO.java (98%) rename bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/{ => coupon}/vo/MktCouponTmplBackVO.java (98%) rename bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/{ => coupon}/vo/MktGroupVo.java (95%) create mode 100644 bonus-modules/bonus-smart-canteen/src/main/resources/mapper/marketing/MktCouponTmplBackMapper.xml diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/coupon/mapper/MktCouponTmplBackMapper.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/coupon/mapper/MktCouponTmplBackMapper.java new file mode 100644 index 00000000..33d02124 --- /dev/null +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/coupon/mapper/MktCouponTmplBackMapper.java @@ -0,0 +1,29 @@ +package com.bonus.canteen.core.marketing.coupon.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.bonus.canteen.core.marketing.coupon.model.MktCouponTmplBack; +import com.bonus.canteen.core.marketing.coupon.vo.MktCouponTmplBackVO; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; + +@Mapper +public interface MktCouponTmplBackMapper extends BaseMapper { + @Select({"SELECT back_id, coupon_name, coupon_amount,company_name FROM mkt_coupon_tmpl_back WHERE back_id = #{backId} ORDER BY id DESC limit 1"}) + MktCouponTmplBack getTmplBackIdByBackId(Long backId); + + @Select({"SELECT back_id, coupon_name, coupon_amount FROM mkt_coupon_tmpl_back WHERE coupon_name = #{couponName} AND coupon_type = #{couponType} ORDER BY id DESC limit 1"}) + MktCouponTmplBack getTmplBackByCouponName(@Param("couponName") String couponName, @Param("couponType") Integer couponType); + + @Select({"SELECT tmpl_id FROM mkt_coupon_tmpl_back WHERE back_id = #{backId}"}) + Long getTmplIdByBackId(Long backId); + + @Select({"SELECT coupon_name FROM mkt_coupon_tmpl_back WHERE back_id = #{backId}"}) + String getCouponNameByBackId(Long backId); + + List listBackVO(@Param("backId") Long backId, @Param("couponType") Integer couponType); + + List getBackIdsByTmplId(Long tmplId); +} diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/coupon/model/MktCouponTmplBack.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/coupon/model/MktCouponTmplBack.java new file mode 100644 index 00000000..2028a76c --- /dev/null +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/coupon/model/MktCouponTmplBack.java @@ -0,0 +1,116 @@ +package com.bonus.canteen.core.marketing.coupon.model; + +import com.baomidou.mybatisplus.annotation.FieldFill; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import java.math.BigDecimal; +import java.time.LocalDateTime; + +@TableName("mkt_coupon_tmpl_back") +@ApiModel("餐券模板备份记录表") +public class MktCouponTmplBack extends Model { + @TableId + @ApiModelProperty("主键自增") + private Long id; + @ApiModelProperty("餐券模板备份id") + private Long backId; + @ApiModelProperty("餐券模板id") + private Long tmplId; + @ApiModelProperty("餐券类型") + private Integer couponType; + @ApiModelProperty("单位名称") + private String companyName; + @ApiModelProperty("餐券名称") + private String couponName; + @ApiModelProperty("餐券金额") + private BigDecimal couponAmount; + @TableField( + value = "crby", + fill = FieldFill.INSERT + ) + @ApiModelProperty("创建人") + private String crby; + @ApiModelProperty("创建时间") + private LocalDateTime crtime; + + public Long getId() { + return this.id; + } + + public Long getBackId() { + return this.backId; + } + + public Long getTmplId() { + return this.tmplId; + } + + public Integer getCouponType() { + return this.couponType; + } + + public String getCompanyName() { + return this.companyName; + } + + public String getCouponName() { + return this.couponName; + } + + public BigDecimal getCouponAmount() { + return this.couponAmount; + } + + public String getCrby() { + return this.crby; + } + + public LocalDateTime getCrtime() { + return this.crtime; + } + + public void setId(final Long id) { + this.id = id; + } + + public void setBackId(final Long backId) { + this.backId = backId; + } + + public void setTmplId(final Long tmplId) { + this.tmplId = tmplId; + } + + public void setCouponType(final Integer couponType) { + this.couponType = couponType; + } + + public void setCompanyName(final String companyName) { + this.companyName = companyName; + } + + public void setCouponName(final String couponName) { + this.couponName = couponName; + } + + public void setCouponAmount(final BigDecimal couponAmount) { + this.couponAmount = couponAmount; + } + + public void setCrby(final String crby) { + this.crby = crby; + } + + public void setCrtime(final LocalDateTime crtime) { + this.crtime = crtime; + } + + public String toString() { + Long var10000 = this.getId(); + return "MktCouponTmplBack(id=" + var10000 + ", backId=" + this.getBackId() + ", tmplId=" + this.getTmplId() + ", couponType=" + this.getCouponType() + ", companyName=" + this.getCompanyName() + ", couponName=" + this.getCouponName() + ", couponAmount=" + String.valueOf(this.getCouponAmount()) + ", crby=" + this.getCrby() + ", crtime=" + String.valueOf(this.getCrtime()) + ")"; + } +} diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/coupon/service/MktCouponService.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/coupon/service/MktCouponService.java index 226c446b..62a60298 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/coupon/service/MktCouponService.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/coupon/service/MktCouponService.java @@ -7,10 +7,8 @@ import com.bonus.canteen.core.marketing.coupon.model.MktCouponPayModel; import com.bonus.canteen.core.marketing.coupon.param.MktCouponMobileUsableParam; import com.bonus.canteen.core.marketing.coupon.vo.MktCouponMobileUsableVO; import com.bonus.canteen.core.marketing.dto.GroupCuponDto; -import com.bonus.canteen.core.marketing.vo.MktGroupVo; +import com.bonus.canteen.core.marketing.coupon.vo.MktGroupVo; -import java.math.BigDecimal; -import java.time.LocalDate; import java.util.List; public interface MktCouponService extends IService { diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/coupon/service/MktCouponTmplBackService.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/coupon/service/MktCouponTmplBackService.java new file mode 100644 index 00000000..013a32a7 --- /dev/null +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/coupon/service/MktCouponTmplBackService.java @@ -0,0 +1,14 @@ +package com.bonus.canteen.core.marketing.coupon.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.bonus.canteen.core.marketing.coupon.constants.MktCouponTypeEnum; +import com.bonus.canteen.core.marketing.coupon.model.MktCouponTmplBack; +import com.bonus.canteen.core.marketing.coupon.vo.MktCouponTmplBackVO; + +import java.util.List; + +public interface MktCouponTmplBackService extends IService { + MktCouponTmplBackVO getBackRelationName(Long backId, MktCouponTypeEnum couponTypeEnum); + + List getBackIdsByTmplId(Long tmplId); +} diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/coupon/service/impl/MktCouponServiceImpl.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/coupon/service/impl/MktCouponServiceImpl.java index 9654dea4..423797a8 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/coupon/service/impl/MktCouponServiceImpl.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/coupon/service/impl/MktCouponServiceImpl.java @@ -7,10 +7,11 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.bonus.canteen.core.marketing.coupon.dto.GroupByCouponStateDto; +import com.bonus.canteen.core.marketing.coupon.service.MktCouponTmplBackService; import com.bonus.canteen.core.marketing.dto.GroupCuponDto; -import com.bonus.canteen.core.marketing.vo.MktCouponMobileVO; -import com.bonus.canteen.core.marketing.vo.MktCouponTmplBackVO; -import com.bonus.canteen.core.marketing.vo.MktGroupVo; +import com.bonus.canteen.core.marketing.coupon.vo.MktCouponMobileVO; +import com.bonus.canteen.core.marketing.coupon.vo.MktCouponTmplBackVO; +import com.bonus.canteen.core.marketing.coupon.vo.MktGroupVo; import com.bonus.common.core.exception.ServiceException; import com.bonus.canteen.core.allocation.canteen.mapper.AllocCanteenMapper; import com.bonus.canteen.core.marketing.coupon.constants.MktCouponStateEnum; @@ -40,6 +41,9 @@ import java.util.*; @Service public class MktCouponServiceImpl extends ServiceImpl implements MktCouponService { private static final Logger log = LoggerFactory.getLogger(MktCouponServiceImpl.class); + @Autowired + @Lazy + private MktCouponTmplBackService mktCouponTmplBackService; @Resource private MktCouponTmplDetlBackMapper mktCouponTmplDetlBackMapper; @Autowired diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/coupon/service/impl/MktCouponTmplBackServiceImpl.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/coupon/service/impl/MktCouponTmplBackServiceImpl.java new file mode 100644 index 00000000..3db2f90e --- /dev/null +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/coupon/service/impl/MktCouponTmplBackServiceImpl.java @@ -0,0 +1,72 @@ +package com.bonus.canteen.core.marketing.coupon.service.impl; + +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.ObjectUtil; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import javax.annotation.Resource; + +import com.bonus.canteen.core.marketing.coupon.constants.MktCouponTypeEnum; +import com.bonus.canteen.core.marketing.coupon.mapper.MktCouponTmplBackMapper; +import com.bonus.canteen.core.marketing.coupon.model.MktCouponTmplBack; +import com.bonus.canteen.core.marketing.coupon.service.MktCouponTmplBackService; +import com.bonus.canteen.core.marketing.coupon.vo.MktCouponTmplBackVO; +import org.springframework.beans.BeanUtils; +import org.springframework.stereotype.Service; + +import java.util.HashSet; +import java.util.Iterator; +import java.util.List; +import java.util.Set; + +@Service +public class MktCouponTmplBackServiceImpl extends ServiceImpl implements MktCouponTmplBackService { + @Resource + private AllocCanteenApi canteenAccessApi; + @Resource + private AllocStallApi shopstallAccessApi; + @Resource + private AllocMealtimeApi mealtimeAccessApi; + + public MktCouponTmplBackVO getBackRelationName(Long backId, MktCouponTypeEnum couponTypeEnum) { + List tmplBackVOList = ((MktCouponTmplBackMapper)this.baseMapper).listBackVO(backId, couponTypeEnum.getKey()); + MktCouponTmplBackVO resultVO = new MktCouponTmplBackVO(); + Set canteenIdSet = new HashSet(); + Set shopstallIdSet = new HashSet(); + Set intervalIdSet = new HashSet(); + BeanUtils.copyProperties(tmplBackVOList.get(0), resultVO); + Iterator var8 = tmplBackVOList.iterator(); + + while(var8.hasNext()) { + MktCouponTmplBackVO tmplBackVO = (MktCouponTmplBackVO)var8.next(); + if (ObjectUtil.isNotNull(tmplBackVO.getCanteenId())) { + canteenIdSet.add(tmplBackVO.getCanteenId()); + } + + if (ObjectUtil.isNotNull(tmplBackVO.getShopstallId())) { + shopstallIdSet.add(tmplBackVO.getShopstallId()); + } + + if (ObjectUtil.isNotNull(tmplBackVO.getIntervalId())) { + intervalIdSet.add(tmplBackVO.getIntervalId()); + } + } + + if (CollUtil.isNotEmpty(canteenIdSet)) { + resultVO.setCanteenNameStr(this.canteenAccessApi.getCanteenNameByIdSet(canteenIdSet)); + } + + if (CollUtil.isNotEmpty(shopstallIdSet)) { + resultVO.setShopstallNameStr(this.shopstallAccessApi.getStallNameByIdSet(shopstallIdSet)); + } + + if (CollUtil.isNotEmpty(intervalIdSet)) { + resultVO.setIntervalNameStr(this.mealtimeAccessApi.getMealtimeNameByTypeSet(intervalIdSet)); + } + + return resultVO; + } + + public List getBackIdsByTmplId(Long tmplId) { + return ((MktCouponTmplBackMapper)this.baseMapper).getBackIdsByTmplId(tmplId); + } +} diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/vo/MktCouponMobileVO.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/coupon/vo/MktCouponMobileVO.java similarity index 98% rename from bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/vo/MktCouponMobileVO.java rename to bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/coupon/vo/MktCouponMobileVO.java index d0a1b6ea..c0184976 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/vo/MktCouponMobileVO.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/coupon/vo/MktCouponMobileVO.java @@ -1,4 +1,4 @@ -package com.bonus.canteen.core.marketing.vo; +package com.bonus.canteen.core.marketing.coupon.vo; import com.bonus.canteen.core.common.utils.SysUtil; import io.swagger.annotations.ApiModelProperty; diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/vo/MktCouponTmplBackVO.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/coupon/vo/MktCouponTmplBackVO.java similarity index 98% rename from bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/vo/MktCouponTmplBackVO.java rename to bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/coupon/vo/MktCouponTmplBackVO.java index 4ce2786e..c1ba9b24 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/vo/MktCouponTmplBackVO.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/coupon/vo/MktCouponTmplBackVO.java @@ -1,4 +1,4 @@ -package com.bonus.canteen.core.marketing.vo; +package com.bonus.canteen.core.marketing.coupon.vo; import io.swagger.annotations.ApiModelProperty; diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/vo/MktGroupVo.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/coupon/vo/MktGroupVo.java similarity index 95% rename from bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/vo/MktGroupVo.java rename to bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/coupon/vo/MktGroupVo.java index a5f1e0e3..ff1e50b5 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/vo/MktGroupVo.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/marketing/coupon/vo/MktGroupVo.java @@ -1,7 +1,8 @@ -package com.bonus.canteen.core.marketing.vo; +package com.bonus.canteen.core.marketing.coupon.vo; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.bonus.canteen.core.marketing.coupon.dto.GroupByCouponStateDto; +import com.bonus.canteen.core.marketing.coupon.vo.MktCouponMobileVO; import io.swagger.annotations.ApiModelProperty; import java.util.Iterator; import java.util.List; diff --git a/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/marketing/MktCouponTmplBackMapper.xml b/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/marketing/MktCouponTmplBackMapper.xml new file mode 100644 index 00000000..048c019b --- /dev/null +++ b/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/marketing/MktCouponTmplBackMapper.xml @@ -0,0 +1,25 @@ + + + + + + + + +