Merge remote-tracking branch 'origin/test' into test

This commit is contained in:
张松
2025-10-16 16:46:11 +08:00
8 changed files with 109 additions and 7 deletions

View File

@@ -3,9 +3,12 @@ package com.czg.controller.admin;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson2.JSONObject; import com.alibaba.fastjson2.JSONObject;
import com.czg.TimeQueryParam;
import com.czg.annotation.SaAdminCheckLogin;
import com.czg.annotation.SaAdminCheckRole;
import com.czg.market.dto.SmsMoneyDetailDto;
import com.czg.market.dto.SmsShopMoneyDetailDTO; import com.czg.market.dto.SmsShopMoneyDetailDTO;
import com.czg.market.dto.SmsShopTemplateDTO; import com.czg.market.dto.SmsShopTemplateDTO;
import com.czg.market.entity.ShopCoupon;
import com.czg.market.entity.SmsShopMoney; import com.czg.market.entity.SmsShopMoney;
import com.czg.market.entity.SmsShopMoneyDetail; import com.czg.market.entity.SmsShopMoneyDetail;
import com.czg.market.service.SmsShopMoneyDetailService; import com.czg.market.service.SmsShopMoneyDetailService;
@@ -46,11 +49,35 @@ public class SmsShopTemplateController {
* 列表 * 列表
*/ */
@GetMapping("/smsTemplate") @GetMapping("/smsTemplate")
public CzgResult<List<SmsShopTemplateDTO>> getTemplateList(@RequestParam(required = false) String title) { public CzgResult<List<SmsShopTemplateDTO>> getTemplateList(@RequestParam(required = false) String title,
List<SmsShopTemplateDTO> data = templateService.getTemplateList(title, StpKit.USER.getShopId()); @RequestParam(required = false) Integer status) {
List<SmsShopTemplateDTO> data = templateService.getTemplateList(title, StpKit.USER.getShopId(),status);
return CzgResult.success(data); return CzgResult.success(data);
} }
/**
* 平台 模板状态/删除
*/
@SaAdminCheckRole("管理员")
@PostMapping("/smsTemplate/shopUse")
public CzgResult<Void> shopUse(@RequestBody SmsShopTemplateDTO param) {
param.setShopId(StpKit.USER.getShopId());
templateService.shopUse(param);
return CzgResult.success();
}
/**
* 平台 获取店铺短信余额明细
*/
@SaAdminCheckRole("管理员")
@PostMapping("/smsMoneyDetail/query")
public CzgResult<Page<SmsShopMoneyDetailDTO>> getSmsMoneyDetail2(@RequestBody SmsMoneyDetailDto param) {
Page<SmsShopMoneyDetailDTO> data = smsMoneyDetailService.getSmsMoneyDetail2(StpKit.USER.getShopId(),param);
return CzgResult.success(data);
}
/** /**
* 新增 * 新增
*/ */
@@ -125,7 +152,7 @@ public class SmsShopTemplateController {
*/ */
@GetMapping("/smsMoneyDetail") @GetMapping("/smsMoneyDetail")
public CzgResult<JSONObject> getSmsMoneyDetailPage(@RequestParam(required = false) Integer page, public CzgResult<JSONObject> getSmsMoneyDetailPage(@RequestParam(required = false) Integer page,
@RequestParam(required = false) Integer size) { @RequestParam(required = false) Integer size) {
Page<SmsShopMoneyDetailDTO> data = smsMoneyDetailService.getSmsMoneyDetailPage(StpKit.USER.getShopId()); Page<SmsShopMoneyDetailDTO> data = smsMoneyDetailService.getSmsMoneyDetailPage(StpKit.USER.getShopId());
JSONObject from = JSONObject.from(data); JSONObject from = JSONObject.from(data);
from.put("sendTotal", smsMoneyDetailService.countSendTotal(StpKit.USER.getShopId())); from.put("sendTotal", smsMoneyDetailService.countSendTotal(StpKit.USER.getShopId()));

View File

@@ -0,0 +1,16 @@
package com.czg.market.dto;
import com.czg.TimeQueryParam;
import lombok.Data;
/**
* 平台查看 商家短信余额明细
* sms_shop_money_detail 表
* @author ww
* @description
*/
@Data
public class SmsMoneyDetailDto extends TimeQueryParam {
// 1 充值 2 扣款
Integer type;
}

View File

@@ -63,6 +63,15 @@ public class SmsShopTemplateDTO implements Serializable {
* 0 待申请 1 审核中 2 成功 -1失败 -2 重新申请中 * 0 待申请 1 审核中 2 成功 -1失败 -2 重新申请中
*/ */
private Integer status; private Integer status;
/**
* 店铺是否使用 0 否 1 是
*/
private Integer shopUse;
/**
* 是否删除 0 否 1 是
*/
private Integer isDel;
/** /**
* 失败原因 * 失败原因

View File

@@ -1,3 +1,4 @@
package com.czg.market.entity; package com.czg.market.entity;
import com.mybatisflex.annotation.Column; import com.mybatisflex.annotation.Column;
@@ -56,6 +57,15 @@ public class SmsShopTemplate implements Serializable {
*/ */
private Integer sort; private Integer sort;
/**
* 店铺是否使用 0 否 1 是
*/
private Integer shopUse;
/**
* 是否删除 0 否 1 是
*/
private Integer isDel;
/** /**
* 0 待申请 1 审核中 2 成功 -1失败 -2 重新申请中 * 0 待申请 1 审核中 2 成功 -1失败 -2 重新申请中
*/ */

View File

@@ -1,5 +1,7 @@
package com.czg.market.service; package com.czg.market.service;
import com.czg.TimeQueryParam;
import com.czg.market.dto.SmsMoneyDetailDto;
import com.czg.market.dto.SmsShopMoneyDetailDTO; import com.czg.market.dto.SmsShopMoneyDetailDTO;
import com.czg.market.entity.SmsShopMoneyDetail; import com.czg.market.entity.SmsShopMoneyDetail;
import com.mybatisflex.core.paginate.Page; import com.mybatisflex.core.paginate.Page;
@@ -16,6 +18,7 @@ import java.math.BigDecimal;
public interface SmsShopMoneyDetailService extends IService<SmsShopMoneyDetail> { public interface SmsShopMoneyDetailService extends IService<SmsShopMoneyDetail> {
Page<SmsShopMoneyDetailDTO> getSmsMoneyDetailPage(Long shopId); Page<SmsShopMoneyDetailDTO> getSmsMoneyDetailPage(Long shopId);
Page<SmsShopMoneyDetailDTO> getSmsMoneyDetail2(Long shopId, SmsMoneyDetailDto param);
/** /**
* 统计发送短信总数 * 统计发送短信总数
*/ */

View File

@@ -20,8 +20,10 @@ public interface SmsShopTemplateService extends IService<SmsShopTemplate> {
* @param name 模板名称 模糊 * @param name 模板名称 模糊
* @return 店铺短信模板列表 * @return 店铺短信模板列表
*/ */
List<SmsShopTemplateDTO> getTemplateList(String name, Long shopId); List<SmsShopTemplateDTO> getTemplateList(String name, Long shopId, Integer status);
void addTemplate(SmsShopTemplateDTO param); void addTemplate(SmsShopTemplateDTO param);
void shopUse(SmsShopTemplateDTO param);
void resubmit(SmsShopTemplateDTO param); void resubmit(SmsShopTemplateDTO param);
} }

View File

@@ -1,5 +1,7 @@
package com.czg.service.market.service.impl; package com.czg.service.market.service.impl;
import com.czg.TimeQueryParam;
import com.czg.market.dto.SmsMoneyDetailDto;
import com.czg.market.dto.SmsShopMoneyDetailDTO; import com.czg.market.dto.SmsShopMoneyDetailDTO;
import com.czg.market.entity.SmsShopMoneyDetail; import com.czg.market.entity.SmsShopMoneyDetail;
import com.czg.market.service.SmsShopMoneyDetailService; import com.czg.market.service.SmsShopMoneyDetailService;
@@ -31,6 +33,18 @@ public class SmsShopMoneyDetailServiceImpl extends ServiceImpl<SmsShopMoneyDetai
return pageAs(PageUtil.buildPage(), queryWrapper, SmsShopMoneyDetailDTO.class); return pageAs(PageUtil.buildPage(), queryWrapper, SmsShopMoneyDetailDTO.class);
} }
@Override
public Page<SmsShopMoneyDetailDTO> getSmsMoneyDetail2(Long shopId, SmsMoneyDetailDto param) {
QueryWrapper queryWrapper = new QueryWrapper();
queryWrapper.eq(SmsShopMoneyDetail::getShopId, shopId)
.eq(SmsShopMoneyDetail::getIsDel, 0)
.ge(SmsShopMoneyDetail::getCreateTime, param.getStartTime())
.le(SmsShopMoneyDetail::getCreateTime, param.getEndTime())
.eq(SmsShopMoneyDetail::getType, param.getType())
.orderBy(SmsShopMoneyDetail::getCreateTime).desc();
return pageAs(PageUtil.buildPage(), queryWrapper, SmsShopMoneyDetailDTO.class);
}
@Override @Override
public Long countSendTotal(Long shopId) { public Long countSendTotal(Long shopId) {
QueryWrapper queryWrapper = new QueryWrapper() QueryWrapper queryWrapper = new QueryWrapper()

View File

@@ -30,13 +30,18 @@ public class SmsShopTemplateServiceImpl extends ServiceImpl<SmsShopTemplateMappe
private RabbitPublisher rabbitPublisher; private RabbitPublisher rabbitPublisher;
@Override @Override
public List<SmsShopTemplateDTO> getTemplateList(String name, Long shopId) { public List<SmsShopTemplateDTO> getTemplateList(String name, Long shopId, Integer status) {
List<Long> list = Arrays.asList(1L, shopId); List<Long> list = Arrays.asList(1L, shopId);
QueryWrapper queryWrapper = new QueryWrapper(); QueryWrapper queryWrapper = new QueryWrapper();
queryWrapper.like(SmsShopTemplate::getTitle, name) queryWrapper.like(SmsShopTemplate::getTitle, name)
.in(SmsShopTemplate::getShopId, list) .in(SmsShopTemplate::getShopId, list)
.orderBy(SmsShopTemplate::getShopId).asc() .orderBy(SmsShopTemplate::getShopId).asc()
.orderBy(SmsShopTemplate::getSort).asc(); .orderBy(SmsShopTemplate::getSort).asc();
if (shopId != 1L) {
queryWrapper.eq(SmsShopTemplate::getStatus, status);
} else {
queryWrapper.eq(SmsShopTemplate::getStatus, 1);
}
return listAs(queryWrapper, SmsShopTemplateDTO.class); return listAs(queryWrapper, SmsShopTemplateDTO.class);
} }
@@ -44,8 +49,24 @@ public class SmsShopTemplateServiceImpl extends ServiceImpl<SmsShopTemplateMappe
public void addTemplate(SmsShopTemplateDTO param) { public void addTemplate(SmsShopTemplateDTO param) {
SmsShopTemplate template = BeanUtil.toBean(param, SmsShopTemplate.class); SmsShopTemplate template = BeanUtil.toBean(param, SmsShopTemplate.class);
template.setStatus(0); template.setStatus(0);
if (template.getShopId().equals(1L)) {
template.setSort(0);
template.setShopUse(1);
template.setStatus(2);
}
save(template); save(template);
sendApplyMsg(template.getShopId(), template.getId()); if (!template.getShopId().equals(1L)) {
sendApplyMsg(template.getShopId(), template.getId());
}
}
@Override
public void shopUse(SmsShopTemplateDTO param) {
SmsShopTemplate template = new SmsShopTemplate();
param.setId(param.getId());
param.setShopUse(param.getShopUse());
param.setIsDel(param.getIsDel());
updateById(template);
} }
@Override @Override