官方列表查询参数

//查询条件 
queryParam: {},
 //查询排序条件
 isorter:{
	 column: 'sortNum', //排序字段
	 order: 'ASC', //排序方式
 },

模糊查询
方式一
//前端

<a-form-item label="账号">
     <a-input placeholder="请输入账号查询" v-model="queryParam.username"></a-input>
</a-form-item>
//后端字段前后拼接*,或者前端输入框查询时输入 如:*张三*
mipCommonNews.setMainTitle("*"+mipCommonNews.getMainTitle()+"*");
QueryWrapper<MipCommonNews> queryWrapper = QueryGenerator.initQueryWrapper(mipCommonNews, req.getParameterMap());

方式二

//官方组件
<a-form-item label="账号">     <j-input placeholder="输入账号模糊查询" v-model="queryParam.username"></j-input> </a-form-item>
//j-input 组件补充 默认不写type时,是type ="JINPUT_QUERY_LIKE"前后模糊查询
// const JINPUT_QUERY_LIKE = 'like';
//  const JINPUT_QUERY_NE = 'ne';
//  const JINPUT_QUERY_GE = 'ge'; //大于等于
//  const JINPUT_QUERY_LE = 'le'; //小于等于 
<j-input placeholder="输入账号模糊查询" type="JINPUT_QUERY_NE" v-model="queryParam.username"></j-input>

字段自动填充

//delFlag 自动填充字段,如果表中有该字段,在新增是不要set值。
/*删除状态(0-正常,1-已删除)/
//必加注解,需要填充时必加
@TableField(fill = FieldFill.INSERT) 
private String delFlag;

列表字典值解析

//后端实体类
/*新闻属性:1:热点 2:置顶/
//必加 dicCode为字典值
@Dict(dicCode = "news_attributes") 
private String newsProperties;
//前端  表头。实体类添加注解后,查询对象中会添加如下格式的命名属性和字典翻译值
//dataIndex  格式: 实体类属性名_dictText
columns:[{
    title: '新闻属性',
    align: 'center',
    dataIndex: 'newsProperties_dictText'    
},]

其他模块调用系统接口

//将系统接口添加到该接口中
//    ISysBaseAPI
  //路径 tcore-boot-base-loxal-api
 //然后在其他模块pom引入   
<dependency>
    <groupId>com.tcore</groupId>
    <artifactId>tcore-system-local-api</artifactId>
</dependency>
非认证接口访问形式
在不需要认证就能访问的接口上添加@RequiresGuest注解,不要在ShiroConfig.java和.yml配置文件中添加。
直接获取当前用户不适用前端token
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
租户配置

如下图,添加需要进行租户处理的表名。

表中添加 int 类型 TENANT_ID字段,后端代码实体类不用添加TENANT_ID 字段属性。

jeecgboot 后端是单体开发 还是微服务开发 jeecgboot入门_restful

获取当前租户
String tenantId = request.getHeader("tenant-id");
获取租户信息
SysTenantDTO sysTenant = iSysBaseAPI.getSysTenantById(tenantId);

租户失效

自定义sql不能采用子查询,否则自动注入租户失效。

不同实体类之间的转换
//将实体类转换成自定义实体类时,需要注意 A中所有属性B中包含,B中可以有A中不包含的属性。
ZshbContact zshbContact = new ZshbContact(); //实体类 A
ZshbContactDTO zshbContactDTO = new ZshbContactDTO(); //自定义实体类 B
//深拷贝 拷贝前 拷贝后
BeanUtils.copyProperties(zshbContactDTO, zshbContact);

JUpload 上传

//上传多个附件时,返回的url采用英文逗号拼接;
import JUpload from '@/components/jeecg/JUpload'
<j-upload v-model="fileList"
;bizPath="temp"
v-model="file"
 text="上传"></j-upload>

实体类字段在数据库中不存在改字段注解
@TableField(exist = false) 表示数据库不存在该字段

/**关联数据库表名*/
    @TableField(exist = false)
    private String tableName;

实体类属性不需要实例化 transient

private transient tableName;

判断集合、对象和字符串工具类 oConvertUtils

jeecgboot 后端是单体开发 还是微服务开发 jeecgboot入门_spring boot_02

LambdaUpdateWrapper 更新记录

LambdaUpdateWrapper<TDeviceSub> wrapper = new LambdaUpdateWrapper<>();
      wrapper.set(TDeviceSub::getStatus, status)
         .in(TDeviceSub::getId, ids);
      return  update(wrapper);