在我们平时新建一个全新的 Java 类,这个类需要存放的包不存在,可以使用如下的方式进行创建:

含义就是说,将 ChannelVO 这个类放在 vo 这个包当中,如果存在则不创建,存在就将新建的类放入其中。

ChannelVO

/**
* @author BNTang
* @version 1.0
* @description 渠道管理,前端展示对象
* @since 2023-11-02
**/
public class ChannelVO extends BaseEntity {
/**
* 渠道名称
*/
@NotBlank(message = "{channel.name.notnull}")
private String channelName; /**
* 渠道状态
* 0 正常 1 停用
*/
@Max(value = 1, message = "{channel.status.invalid}")
@Min(value = 0, message = "{channel.status.invalid}")
@NotNull(message = "{channel.status.notnull}")
private Byte status; /**
* 备注信息
*/
private String remark; /**
* 渠道类型:1 线上渠道 2 线下渠道
*/
@Max(value = 2, message = "{channel.type.invalid}")
@Min(value = 1, message = "{channel.type.invalid}")
@NotNull(message = "{channel.type.notnull}")
private Integer type; /**
* 删除标志(0代表存在 2代表删除)
*/
private String delFlag; public String getChannelName() {
return channelName;
} public void setChannelName(String channelName) {
this.channelName = channelName;
} public Byte getStatus() {
return status;
} public void setStatus(Byte status) {
this.status = status;
} @Override
public String getRemark() {
return remark;
} @Override
public void setRemark(String remark) {
this.remark = remark;
} public Integer getType() {
return type;
} public void setType(Integer type) {
this.type = type;
} public String getDelFlag() {
return delFlag;
} public void setDelFlag(String delFlag) {
this.delFlag = delFlag;
}
}

ChannelController

/**
* 新增渠道
*/
@PreAuthorize("hasPermission('tienchin:channel:create')")
@Log(title = "渠道管理", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@Validated @RequestBody ChannelVO channelVO) {
return AjaxResult.success(iChannelService.addChannel(channelVO) > 0 ? "添加成功" : "添加失败");
}

IChannelService

/**
* 添加渠道
*
* @param channelVO 渠道信息
* @return int {@code 0} 失败 {@code 1} 成功
* @author BNTang
* @since 2023/09/02 12:11:42
*/
int addChannel(ChannelVO channelVO);

ChannelServiceImpl

@Override
public int addChannel(ChannelVO channelVO) {
// 渠道名称不能重复
QueryWrapper<Channel> channelQueryWrapper = new QueryWrapper<>();
channelQueryWrapper.lambda()
.eq(Channel::getChannelName, channelVO.getChannelName())
.eq(Channel::getDelFlag, "0");
Channel channelByDb = getOne(channelQueryWrapper);
if (channelByDb != null) {
// 说明渠道名称已经存在
return 0;
} // 保存渠道信息
Channel channel = new Channel();
BeanUtils.copyProperties(channelVO, channel); // 设置其它默认值
channel.setCreateBy(SecurityUtils.getUsername());
channel.setCreateTime(LocalDateTime.now());
return save(channel) ? 1 : 0;
}

TienChin 渠道管理-添加渠道的更多相关文章

  1. ERP渠道管理添加验证和查询(二十二)

    添加联系人的后台代码: protected void btnSubmit_Click(object sender, EventArgs e) { BioErpCrmManageChannel chan ...

  2. 【Devops】【docker】【CI/CD】Jenkins源代码管理 添加gitlab项目地址,报错Failed to connect to repository : Error performing command: ls-remote -h git@192.168.92.130:8090/root/swapping.git HEAD

    Jenkins源代码管理 添加gitlab项目地址 报错如下: Failed to connect to repository : Error performing command: ls-remot ...

  3. Windows ->> Windows Server 2012打开管理添加“我的电脑”桌面图标途径

    Windows Server 2012打开管理添加“我的电脑”桌面图标途径 rundll32.exe shell32.dll,Control_RunDLL desk.cpl,,0

  4. 项目一:第五天 1、区域数据(pinyin4j-简码,城市编码) 2、Web层代码重构(model对象,分页代码提取) 3、区域分页查询 3、分区添加功能 4、定区管理管理-添加,分页

    Service: /** * @Description: 1.保存定区  2.让分区关联定区 * 对象三种状态 1.持久态(被session管理对象-一级缓存中有对象) 2.托管态(有OID标识,数据 ...

  5. 一种动态写入apk数据的方法(用于用户关系绑定、添加渠道号等)

    背景: 正在开发的APP需要记录业务员与客户的绑定关系.具体应用场景如下: 由流程图可知,并没有用户填写业务人员信息这一步,因此在用户下载的APP中就已经携带了业务人员的信息. 由于业务人员众多,不可 ...

  6. ERP客户关系渠管理添加和修改联系人(二十一)

    树形结构treeview 前端代码: <form id="form1" runat="server"> <div> <asp:Tr ...

  7. Vue小案例 之 商品管理------添加商品

    进行添加button,以及商品列表的创建 html: <div class="form-btn"> <button>确认添加</button> ...

  8. iOS文件的管理(添加,删除,拷贝,移动)

    #import "ViewController.h" @implementation ViewController - (void)viewDidLoad { [super vie ...

  9. 使用vue实现用户管理 添加及删除功能

    简单的管理系统-增删改查 添加及删除功能 <!DOCTYPE html> <html> <head> <meta charset="UTF-8&qu ...

  10. JQuery仿淘宝商家后台管理 之 管理添加分类

    先看一下效果图: 实现功能: 1.打开时加载分类信息,折叠所有分类 2.动态添加子类和父类 3.顺序的调整 4.无刷新删除,添加 5.保存到数据库 下面是HTML代码 : <title>分 ...

随机推荐

  1. Solon 开发进阶,三、常用配置说明

    Solon 开发进阶 一.插件扩展机制 二.体外扩展机制 三.常用配置说明 四.启动参数说明 五.全局异常订阅 应用主配置文件为: resources/app.yml( 或 app.propertie ...

  2. Mindjet MindManager 拖动页面

    常规的软件是按住空格建+鼠标左健 进行拖放,但 MindManager 不支持,如何对Mindjet MindManager 拖动页面? 按住 鼠标右键 直接拖拽 配合 Ctrl+滚轮 放大缩小,一起 ...

  3. .Net Core 多语言

    StartUp.cs public void Configure(IApplicationBuilder app, IWebHostEnvironment env) { app.UseEndpoint ...

  4. 【eBPF-04】进阶:BCC 框架中 BPF 映射的应用 v2.0——尾调用

    这两天有空,继续更新一篇有关 eBPF BCC 框架尾调用的内容. eBPF 技术很新,能够参考的中文资料很少,而对于 BCC 框架而言,优秀的中文介绍和教程更是凤毛麟角.我尝试去网上检索有关尾调用的 ...

  5. 在Flutter中使用SetState无效?可能是忽略了这个!

    这次是Flutter开发技术分享,解决的问题点来自本人实际的开发经历. 首先描述一下问题:在某个组件中调用setState()方法更新该组件状态,结果是无法做到更新效果,组件仍然维持原状. 下面我们用 ...

  6. 【JAVA基础】String处理

    String处理 字符串查找子串及截取 // 保存的头像文件的文件名 String suffix = ""; String originalFilename = file.getO ...

  7. Hbase结构和原理

     Hbase是什么? HBase是一种构建在Hadoop HDFS之上的分布式.面向列的存储系统.在需要实时读写.随机访问超大规模数据集时,可以使用HBase. HBase依赖Zookeeper,默认 ...

  8. uni-app打包到安卓步骤

    1.打包到安卓 https://www.bilibili.com/video/BV1BJ411W7pX?p=56 2.打包到IOS https://www.jianshu.com/p/ef6e6e01 ...

  9. vscode prettier保存代码时自动格式化

    https://blog.csdn.net/qq_37815596/article/details/109225879

  10. 如何开发一套苹果cms前端模板

    本文运用了苹果cms官网的模板开发教程,开发了一套苹果cms的前端模板,感兴趣的同学可以去github下载使用. 什么是模板 模板是网站的主题外观,也被称为主题或皮肤.通过使用不同的模板,网站的前台可 ...