开源低代码平台-Microi吾码-V8.FormEngine用法

打印 上一主题 下一主题

主题 910|帖子 910|积分 2730

平台简介

   

  • 技能框架:.NET8 + Redis + MySql/SqlServer/Oracle + Vue2/3 + Element-UI/Element-Plus
  • 平台始于2014年(基于Avalon.js),2018年利用Vue重构,于2024年10月29日开源
  • 试用地址:https://microi.net
  • Gitee开源地址:https://gitee.com/ITdos/microi.net
  • GitCode开源地址:https://gitcode.com/microi-net/microi.net/overview

  前后端V8语法同等,但略有差别

   

  • 此文档为前后端V8共享文档,均为Javascript语法,用法基本同等,但略有差别
  • 服务器端【V8.FormEngine】对表的全部操作,均支持第二个参数传入V8.DbTrans数据库事务对象
  • 在接口引擎中一旦利用了数据库事务对象,必须执行V8.DbTrans.Commit()提交或V8.DbTrans.Rollback()回滚,而V8变乱中不必要(会根据V8.Result是否为false来执行提交或回滚)
  • V8.FormEngine下全部函数均为单表操作(除Batch批量操作外),如需多表关联查询请查看V8.ModuleEngine用法
  前端V8异步、同步用法

  1. //第一种,同步执行:
  2. var result = await V8.FormEngine.GetTableData('表名或表Id,不区分大小写', {
  3.     _Where : []
  4. });
  5. if(result.Code != 1){
  6.         V8.Tips(`获取数据出现错误:${result.Msg}`, false); return;
  7. }
  8. var dataList = result.Data;
  9. //第二种,异步执行:
  10. V8.FormEngine.GetTableData('表名或表Id,不区分大小写', {
  11.     _Where : []
  12. }, function(result){//异步回调函数
  13.         if(result.Code != 1){
  14.                 V8.Tips(`获取数据出现错误:${result.Msg}`, false); return;
  15.         }
  16.     var dataList = result.Data;
  17. });
复制代码
后端V8异步、同步用法

  1. //同步执行
  2. //后端V8第二个参数均支持传入V8.DbTrans数据库事务对象
  3. //注意一旦使用了V8.DbTrans对象,就必须执行V8.DbTrans.Commit()提交或V8.DbTrans.Rollback()回滚
  4. var result = V8.FormEngine.GetTableData('表名或表Id,不区分大小写', {
  5.     _Where : [],
  6. }, V8.DbTrans);
  7. //异步执行(目前后端V8异步执行暂不支持回调函数和获取结果,也不支持数据库事务)
  8. V8.FormEngine.GetTableDataAsync('表名或表Id,不区分大小写', {
  9.     _Where : [],
  10. });
复制代码
后端.NET二次开发C#用法

  1. var _formEngine = new FormEngine();
  2. var result = await _formEngine.GetTableDataAsync('表名或表Id,不区分大小写', new {
  3.     _Where = new List<DiyWhere>(){
  4.         new DiyWhere(){
  5.             Name = "Xingming", Value = '张三', Type = "Like"
  6.         }
  7.      }
  8. });
  9. var dataList = result.Data;
复制代码
_Where的用法

   见文章:https://microi.blog.csdn.net/article/details/143582519
  GetFormData:获取一条数据

  1. //必须传入Id或_Where
  2. var result = await V8.FormEngine.GetFormData('表名或表Id,不区分大小写', {
  3.     Id : '',
  4.     _Where : [{ Name : 'Id', Value : '', Type : '=' }]
  5. });
  6. if(modelResult.Code != 1){
  7.         //错误信息:modelResult.Msg
  8. }
复制代码
GetTableData:获取数据列表

  1. V8.FormEngine.GetTableData('表名或表Id,不区分大小写', {
  2.     _Where : [{ Name : 'Age', Value : '10', Type : '>' }],
  3.     _PageSize : 15,//每页多少条数据
  4.     _PageIndex: 1,//第几页数据,从1开始索引
  5.     _OrderBy : 'Name',//可选。传入排序字段名称
  6.     _OrderByType : 'ASC',//可选。值:DESC、ASC(不区分大小写)
  7.     _OrderBys: { //或者使用多字段排序 order by Account asc, Phone desc
  8.                 'Account' : 'asc',
  9.                 'Phone' : 'desc'
  10.         }
  11. });
  12. //返回 { Code : 1/0, Data : [], DataCount : 数量总数用于计算分页, Msg : '错误信息' }
复制代码
GetTableDataAnonymous:匿名获取数据列表

   

  • 用法和以上GetTableData同等
  • 注意如果是在前端V8中利用,必须要在表单属性中开启【允许匿名读取】
  GetTableDataCount:仅获取数据条数

   

  • 用法和以上GetTableData同等
  GetTableDataTree:获取树形数据列表

   

  • 用法和以上GetTableData同等
  • 注意表单属性中必须开启【树形结构】设置
  GetFieldData:获取某个字段设置的数据源

AddFormData:新增一条数据

  1. V8.FormEngine.AddFormData({
  2.     FormEngineKey : '',//必传
  3.     Id : '',//可选,若不传则由服务器端自动生成guid值
  4.     _RowModel : {
  5.         
  6.     }
  7. });
  8. //返回 { Code : 1/0, Data : {新增后的数据对象,包含Id、CreateTime、UserId等默认字段}, Msg : '错误信息!' }
  9. //值得注意的是:当表单属性中开启了【允许匿名新增数据】,那么则可以不传入token使用V8.FormEngine.AddFormDataAnonymous()新增数据
  10. //参数与上面一致,但需要新增一个OsClient的参数。
复制代码
AddFormDataBatch:批量新增数据

  1. //自带事务,也可第二个参数传入V8.DbTrans事务对象。
  2. //每条数据支持不同的表FormEngineKey
  3. var addList = [];
  4. addList.push({
  5.     FormEngineKey : '',
  6.     Id : '',//可选
  7.     _RowModel: {
  8.    
  9.     }
  10. });
  11. var addResult = V8.FormEngine.AddFormDataBatch(addList);
复制代码
AddField:新增一个字段

  1. //暂时仅支持服务器端V8。新增一个字段
  2. var addField = V8.FormEngine.AddField({
  3.     TableName : 'Diy_Test',//表名
  4.     Name : 'Age',//字段名
  5.     Type : 'int',//字段类型
  6.     Label : '年龄',//字段显示名称,
  7.     Component : 'NumberText',//控件类型
  8.     TableWidth : '100',//表格宽度
  9.     Visible : 1 //是否显示
  10. });
复制代码
AddTable:新增一张表

//临时仅支持服务器端V8。新增一张表
UptFormData:修改一条数据

  1. V8.FormEngine.UptFormData({
  2.     FormEngineKey : '',
  3.     Id : '',//必传
  4.     _RowModel : {
  5.         FieldName : ''//要修改的字段,注意字段值不能是{}或[],需要序列化
  6.     }
  7. });
复制代码
UptFormDataBatch:批量修改数据

  1. //批量修改,自带事务,也可第二个参数传入V8.DbTrans事务对象。
  2. //每条数据支持不同的表FormEngineKey
  3. var uptList = [];
  4. uptList.push({
  5.     FormEngineKey : '',
  6.     Id : '',//必传
  7.     _RowModel: {
  8.    
  9.     }
  10. });
  11. var uptResult = V8.FormEngine.UptFormDataBatch(uptList);
复制代码
UptFormDataByWhere:根据where条件批量修改数据

  1. //,谨慎操作。如果未传入条件,则返回错误
  2. //对应sql:update diy_content set Name='xxx' where ContentKey like '%test%'
  3. var result = V8.FormEngine.UptFormDataByWhere({
  4.     FormEngineKey : 'diy_content',
  5.     _Where : [{ Name : 'ContentKey', Value : 'test', Type : 'Like' }],
  6.     _RowModel : {
  7.         Name : 'xxx'
  8.     }
  9. });
复制代码
DelFormData:删除一条数据

  1. V8.FormEngine.DelFormData({
  2.     FormEngineKey : '',//必传
  3.     Id : '',//必传
  4. });
复制代码
DelFormDataBatch:批量删除数据,自带事务

  1. //也可第二个参数传入V8.DbTrans事务对象。
  2. //每条数据支持不同的表FormEngineKey
  3. var delList = [];
  4. delList.push({
  5.     FormEngineKey : '',
  6.     Id : '',//必传
  7. });
  8. var delResult = V8.FormEngine.DelFormDataBatch(delList);
复制代码
DelFormDataByWhere:根据where条件批量删除数据

  1. //谨慎操作。如果未传入条件,则返回错误
  2. //对应sql:DELETE FROM diy_content WHERE ContentKey LIKE '%test%'
  3. var result = V8.FormEngine.DelFormDataByWhere({
  4.     FormEngineKey : 'diy_content',
  5.     _Where : [{ Name : 'ContentKey', Value : 'test', Type : 'Like' }],
  6. });
复制代码
开源低代码平台Microi吾码-系列文档

   

  • 平台先容:https://microi.blog.csdn.net/article/details/143414349
  • 一键安装利用:https://microi.blog.csdn.net/article/details/143832680
  • 源码本地运行-后端:https://microi.blog.csdn.net/article/details/143567676
  • 源码本地运行-前端:https://microi.blog.csdn.net/article/details/143581687
  • Docker摆设:https://microi.blog.csdn.net/article/details/143576299
  • 快速开始利用:https://microi.blog.csdn.net/article/details/143607068
  • 表单引擎:https://microi.blog.csdn.net/article/details/143671179
  • 工作流引擎:https://microi.blog.csdn.net/article/details/143742635
  • 自定义导出Excel:https://microi.blog.csdn.net/article/details/143619083
  • V8函数列表-前端:https://microi.blog.csdn.net/article/details/143623205
  • V8函数列表-后端:https://microi.blog.csdn.net/article/details/143623433
  • V8.FormEngine用法:https://microi.blog.csdn.net/article/details/143623519
  • Where条件用法:https://microi.blog.csdn.net/article/details/143582519
  • 分布式存储设置:https://microi.blog.csdn.net/article/details/143763937
  • 表单控件数据源绑定设置:https://microi.blog.csdn.net/article/details/143767223
  • DosResult说明:https://microi.blog.csdn.net/article/details/143870540

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

卖不甜枣

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表