提交
This commit is contained in:
@ -49,8 +49,8 @@ public class DictDataController {
|
||||
return success(true);
|
||||
}
|
||||
|
||||
@DeleteMapping("/delete")
|
||||
@Operation(summary = "删除字典数据")
|
||||
@DeleteMapping("/delete")
|
||||
@Parameter(name = "id", description = "编号", required = true, example = "1024")
|
||||
@PreAuthorize("@ss.hasPermission('system:dict:delete')")
|
||||
public CommonResult<Boolean> deleteDictData(Long id) {
|
||||
|
@ -25,7 +25,6 @@ public class DictDataBaseVO {
|
||||
|
||||
@Schema(description = "字典值", required = true, example = "iocoder")
|
||||
@NotBlank(message = "字典键值不能为空")
|
||||
@Size(max = 100, message = "字典键值长度不能超过100个字符")
|
||||
private String value;
|
||||
|
||||
@Schema(description = "字典类型", required = true, example = "sys_common_sex")
|
||||
|
@ -35,14 +35,14 @@ public class SmsCallbackController {
|
||||
return success(true);
|
||||
}
|
||||
|
||||
@PostMapping("/tencent")
|
||||
@PermitAll
|
||||
@Operation(summary = "腾讯云短信的回调", description = "参见 https://cloud.tencent.com/document/product/382/52077 文档")
|
||||
@OperateLog(enable = false)
|
||||
public CommonResult<Boolean> receiveTencentSmsStatus(HttpServletRequest request) throws Throwable {
|
||||
String text = ServletUtils.getBody(request);
|
||||
smsSendService.receiveSmsStatus(SmsChannelEnum.TENCENT.getCode(), text);
|
||||
return success(true);
|
||||
}
|
||||
// @PostMapping("/tencent")
|
||||
// @PermitAll
|
||||
// @Operation(summary = "腾讯云短信的回调", description = "参见 https://cloud.tencent.com/document/product/382/52077 文档")
|
||||
// @OperateLog(enable = false)
|
||||
// public CommonResult<Boolean> receiveTencentSmsStatus(HttpServletRequest request) throws Throwable {
|
||||
// String text = ServletUtils.getBody(request);
|
||||
// smsSendService.receiveSmsStatus(SmsChannelEnum.TENCENT.getCode(), text);
|
||||
// return success(true);
|
||||
// }
|
||||
|
||||
}
|
||||
|
@ -1,4 +1,42 @@
|
||||
package co.yixiang.yshop.module.system.controller.app.dict;
|
||||
|
||||
import co.yixiang.yshop.module.system.controller.admin.dict.vo.data.DictDataRespVO;
|
||||
import co.yixiang.yshop.module.system.service.dict.DictDataService;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import javax.annotation.security.PermitAll;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.PrintWriter;
|
||||
|
||||
|
||||
@Tag(name = "用户 APP - 数据字典")
|
||||
@RestController
|
||||
@RequestMapping("/system/dict-data")
|
||||
@Validated
|
||||
public class AppDictDataController {
|
||||
|
||||
@Resource
|
||||
private DictDataService dictDataService;
|
||||
|
||||
@GetMapping("/agreement/{type}")
|
||||
@Operation(summary = "获得协议", description = "包括用户协议和隐私协议")
|
||||
// 无需添加权限认证,因为前端全局都需要
|
||||
@PermitAll
|
||||
public void getAgreement(@PathVariable Integer type, HttpServletResponse response) throws IOException {
|
||||
response.setHeader("Content-Type","text/html;charset=UTF-8");
|
||||
DictDataRespVO dict = dictDataService.getAgreement(type);
|
||||
PrintWriter writer = response.getWriter();
|
||||
writer.write(dict.getValue());
|
||||
writer.flush();
|
||||
// return success(dictDataService.getAgreement(type));
|
||||
}
|
||||
}
|
||||
|
@ -9,7 +9,7 @@ import org.springframework.stereotype.Component;
|
||||
import javax.annotation.Resource;
|
||||
|
||||
/**
|
||||
* 针对 {@link SmsSendMessage} 的消费者
|
||||
* 针对 {@link SmsSendMessage} 发送短信的消费者
|
||||
*
|
||||
* @author zzf
|
||||
*/
|
||||
|
@ -1,10 +1,8 @@
|
||||
package co.yixiang.yshop.module.system.service.dict;
|
||||
|
||||
import co.yixiang.yshop.framework.common.pojo.PageResult;
|
||||
import co.yixiang.yshop.module.system.controller.admin.dict.vo.data.DictDataCreateReqVO;
|
||||
import co.yixiang.yshop.module.system.controller.admin.dict.vo.data.DictDataExportReqVO;
|
||||
import co.yixiang.yshop.module.system.controller.admin.dict.vo.data.DictDataPageReqVO;
|
||||
import co.yixiang.yshop.module.system.controller.admin.dict.vo.data.DictDataUpdateReqVO;
|
||||
import co.yixiang.yshop.module.system.controller.admin.dict.vo.data.*;
|
||||
import co.yixiang.yshop.module.system.controller.admin.dict.vo.type.DictTypeSimpleRespVO;
|
||||
import co.yixiang.yshop.module.system.dal.dataobject.dict.DictDataDO;
|
||||
|
||||
import java.util.Collection;
|
||||
@ -105,4 +103,18 @@ public interface DictDataService {
|
||||
* @return 字典数据
|
||||
*/
|
||||
DictDataDO parseDictData(String dictType, String label);
|
||||
|
||||
|
||||
/**
|
||||
* 获得协议
|
||||
*
|
||||
* @return 字典类型列表
|
||||
*/
|
||||
DictDataRespVO getAgreement(Integer type);
|
||||
|
||||
/**
|
||||
* 获得用户默认头像
|
||||
* @return
|
||||
*/
|
||||
DictDataRespVO getDefaultHead();
|
||||
}
|
||||
|
@ -4,14 +4,14 @@ import cn.hutool.core.collection.CollUtil;
|
||||
import co.yixiang.yshop.framework.common.enums.CommonStatusEnum;
|
||||
import co.yixiang.yshop.framework.common.pojo.PageResult;
|
||||
import co.yixiang.yshop.framework.common.util.collection.CollectionUtils;
|
||||
import co.yixiang.yshop.module.system.controller.admin.dict.vo.data.DictDataCreateReqVO;
|
||||
import co.yixiang.yshop.module.system.controller.admin.dict.vo.data.DictDataExportReqVO;
|
||||
import co.yixiang.yshop.module.system.controller.admin.dict.vo.data.DictDataPageReqVO;
|
||||
import co.yixiang.yshop.module.system.controller.admin.dict.vo.data.DictDataUpdateReqVO;
|
||||
import co.yixiang.yshop.module.system.controller.admin.dict.vo.data.*;
|
||||
import co.yixiang.yshop.module.system.controller.admin.dict.vo.type.DictTypeSimpleRespVO;
|
||||
import co.yixiang.yshop.module.system.convert.dict.DictDataConvert;
|
||||
import co.yixiang.yshop.module.system.dal.dataobject.dict.DictDataDO;
|
||||
import co.yixiang.yshop.module.system.dal.dataobject.dict.DictTypeDO;
|
||||
import co.yixiang.yshop.module.system.dal.mysql.dict.DictDataMapper;
|
||||
import co.yixiang.yshop.module.system.enums.agreement.AgreementTypeEnum;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.google.common.annotations.VisibleForTesting;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
@ -23,6 +23,9 @@ import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import static co.yixiang.yshop.framework.common.exception.util.ServiceExceptionUtil.exception;
|
||||
import static co.yixiang.yshop.module.system.enums.DictTypeConstants.PRIVACY_AGREEMENT;
|
||||
import static co.yixiang.yshop.module.system.enums.DictTypeConstants.USER_AGREEMENT;
|
||||
import static co.yixiang.yshop.module.system.enums.DictTypeConstants.DEFAULT_HEAD;
|
||||
import static co.yixiang.yshop.module.system.enums.ErrorCodeConstants.*;
|
||||
|
||||
/**
|
||||
@ -181,4 +184,23 @@ public class DictDataServiceImpl implements DictDataService {
|
||||
return dictDataMapper.selectByDictTypeAndLabel(dictType, label);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public DictDataRespVO getAgreement(Integer type) {
|
||||
LambdaQueryWrapper<DictDataDO> qw = new LambdaQueryWrapper<>();
|
||||
if (type.equals(AgreementTypeEnum.USER.getType())) {
|
||||
qw.eq(DictDataDO::getLabel, USER_AGREEMENT);
|
||||
} else {
|
||||
qw.eq(DictDataDO::getLabel, PRIVACY_AGREEMENT);
|
||||
}
|
||||
DictDataDO dictDataDO = dictDataMapper.selectOne(qw);
|
||||
return DictDataConvert.INSTANCE.convert(dictDataDO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public DictDataRespVO getDefaultHead(){
|
||||
LambdaQueryWrapper<DictDataDO> qw = new LambdaQueryWrapper<>();
|
||||
DictDataDO dictDataDO = dictDataMapper.selectOne(qw.eq(DictDataDO::getLabel,DEFAULT_HEAD));
|
||||
return DictDataConvert.INSTANCE.convert(dictDataDO);
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user