TienChin 渠道管理-添加渠道
在我们平时新建一个全新的 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 渠道管理-添加渠道的更多相关文章
- ERP渠道管理添加验证和查询(二十二)
添加联系人的后台代码: protected void btnSubmit_Click(object sender, EventArgs e) { BioErpCrmManageChannel chan ...
- 【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 ...
- Windows ->> Windows Server 2012打开管理添加“我的电脑”桌面图标途径
Windows Server 2012打开管理添加“我的电脑”桌面图标途径 rundll32.exe shell32.dll,Control_RunDLL desk.cpl,,0
- 项目一:第五天 1、区域数据(pinyin4j-简码,城市编码) 2、Web层代码重构(model对象,分页代码提取) 3、区域分页查询 3、分区添加功能 4、定区管理管理-添加,分页
Service: /** * @Description: 1.保存定区 2.让分区关联定区 * 对象三种状态 1.持久态(被session管理对象-一级缓存中有对象) 2.托管态(有OID标识,数据 ...
- 一种动态写入apk数据的方法(用于用户关系绑定、添加渠道号等)
背景: 正在开发的APP需要记录业务员与客户的绑定关系.具体应用场景如下: 由流程图可知,并没有用户填写业务人员信息这一步,因此在用户下载的APP中就已经携带了业务人员的信息. 由于业务人员众多,不可 ...
- ERP客户关系渠管理添加和修改联系人(二十一)
树形结构treeview 前端代码: <form id="form1" runat="server"> <div> <asp:Tr ...
- Vue小案例 之 商品管理------添加商品
进行添加button,以及商品列表的创建 html: <div class="form-btn"> <button>确认添加</button> ...
- iOS文件的管理(添加,删除,拷贝,移动)
#import "ViewController.h" @implementation ViewController - (void)viewDidLoad { [super vie ...
- 使用vue实现用户管理 添加及删除功能
简单的管理系统-增删改查 添加及删除功能 <!DOCTYPE html> <html> <head> <meta charset="UTF-8&qu ...
- JQuery仿淘宝商家后台管理 之 管理添加分类
先看一下效果图: 实现功能: 1.打开时加载分类信息,折叠所有分类 2.动态添加子类和父类 3.顺序的调整 4.无刷新删除,添加 5.保存到数据库 下面是HTML代码 : <title>分 ...
随机推荐
- Solon Aop 特色开发(3)构建一个Bean的三种方式
Solon,更小.更快.更自由!本系列专门介绍Solon Aop方面的特色: <Solon Aop 特色开发(1)注入或手动获取配置> <Solon Aop 特色开发(2)注入或手动 ...
- django中间件需要了解的方法 importlib模块 csrf校验策略 csrf相关装饰器
目录 django中间件三个需要了解的方法 process_view process_exception process_template_response 基于django中间件实现功能的插拔式设计 ...
- umount.nfs4: /home/videorec/sharedir: device is busy
用umount取消挂载时报错设备繁忙:device is busy.原因是还有进程在打开目录下的文件,可以先杀死进程,再卸载,或者强制卸载 umount 使用umount强制卸载,参数如下: -l ...
- 如何向已有的项目中添加C/C++代码?
第一步: 我们需要在src/main下面建立一个cpp目录,然后在其中写一个CMakeLists.txt文件和一个cpp文件,直接给出代码: #CMakeLists.txt文件# For more i ...
- Java FTP操作
pom引用: <dependency> <groupId>commons-net</groupId> <artifactId>commons-net&l ...
- MySQL 的 crash-safe 原理解析
本文首发于 vivo互联网技术 微信公众号 链接:https://mp.weixin.qq.com/s/5i9wmJs4_Er7RaYfNnETyA作者:xieweipeng MySQL作为当下最流行 ...
- java生成word证明文件
开发中遇到系统自动出常用证明的需求,例如某在校大学生要求学校开具在校证明,这类证明数量大格式统一,使用代码如何实现. 一.设置word模板 下图中红色部分就是要动态变化的. 模板存放位置 二.依赖破p ...
- scrollIntoView页面滑动特效
点击左侧的菜单,页面平滑滚动:
- Oracle数据库学习总结
SQL 笔记 ch3_cn 1.数据类型记录 char(n) 定长字符 varchar(n) 可变长字符 numeric(p,d) 定点数,总位数p,小数点后位数q float(n) n位浮点数 2. ...
- SpringMVC08——拦截器——2021-05-11
拦截器概述 SpringMVC的拦截器(Interceptor)类似于Servlet中的过滤器(Filter),它主要用于拦截用户请求并做相应的处理. 例如:进行权限验证.记录请求信息的日志.判断用户 ...