增,删,改
add插件
下面是使用add插件进行插入数据的操作,第二个action使用查询插件查询是否插入成功
{
"actions":[
{
"name":"addaction",
"add":{
"className":"ZsTestPO",
"uuid":["id","remark"],
"defaults":{"test_field":"nnnnnn"},
"required":["test_field","create_date"],
"calculate":{"salary:-<salary>+0.5*(-10*10)","bonus:<bonus>-100"},
"data":[
{"name":"ccc","salary":22.50,"bonus":"110","birthDay":"2021/10/08","create_date":"2021-10-08"},
{"name":"mmm","salary":11.50,"bonus":120,"birthDay":"2021-02-03","create_date":"2021-02-03"}]
}
},{
"name":"and query",
"get":{
"relation":{
"classes":["ZsTestPO"]
},
"condition":{
"type":"or",
"where":{
"eq":{"name":["ccc","mmm"]}
}
}
}
}
]
}
这里为了演示因此json字符串看上去十分的复杂,但实际上这里只需要用到class属性以及data属性就可以完成一个简单的插入操作
参数说明
- class:对应的实体类名,DML类型的操作只能针对一个表
- uuid:为哪些列生成uuid值
- snowFlake:雪花id
- defaults:数据列的默认值
- required:校验字段值是否存在,在defaults属性后执行
- calculate:计算字符串里的数学公式,<>符号里的字段为引用的字段变量值
修改插件edit
下面是json用例,将ZsTestPO类对应的表字段name值更改为ppp,查询条件是name为aaa或mmm的数据
{
"actions": [
{
"name": "editName",
"edit": {
"class":"ZsTestPO",
"set": {
"name": "ppp"
},
"condition":{
"type": "or",
"matches": {
"eq": {
"name": ["aaa","mmm"]
}
}
}
}
}
]
}
参数说明
- set:和update语句中的set含义相同,其中key是列名,value是要修改的值
- editAll:是否忽略条件限制,允许修改全部数据,默认为false,为false时condition属性不能为空
json脚本在后台生成的sql如下
update zs_test set name='ppp' where name='aaa' or name='mmm'
返回的结果
{
"code": 200,
"msg": "operation successfully",
"result": {
"editName": 2
},
"log": null
}
删除插件delete
json用例
{
"actions":[{
"name":"deleteAction",
"delete":{
"class":"TestBank",
"condition":{
"where":{
"in":{"id":[303,306]}
}
}
}
}]
}
json指令在后台生成的sql如下
delete from t_bank where id in ('303','306')
返回的结果
{
"code": 200,
"msg": "operation successfully",
"result": {
"deleteAction": 0
},
"log": null
}
参数说明
- deleteAll:是否忽略条件限制,允许删除全部数据,默认为false,为false时condition属性不能为空