『贴代码』
我的博文
个人作品
优选问答
「搜索」
【本期话题】更多
三人寄语更多
抛开需求讲架构,和纸上谈兵无差!
点赞:1
慎用redis的同步我的意见是redis都走异步!!!
点赞:0
由于时间的问题,我们往往会给自己埋坑,等着后续或者下一任来填!
点赞:0
谋而后动,往往会让你对自己的代码更具信心!
点赞:1
微信的app这个东西很鬼,有时候你刷新页面,会造成部分数据重置,部分不重置,不妨试试把对象放app.globalData里面去,会有意外惊喜!
点赞:0
你连F12都不关注,你好意思说你是前端?
点赞:0
没有最好的语言,只有更合适的语言!
点赞:0
逻辑注解清晰的代码优于那些一眼看不明白的语法糖
点赞:0
在循环里面慎重的使用await!
点赞:0
时好时坏的结果,往往是多线程引起的逻辑混乱导致的!
点赞:0
PasteForm中如何处理批量操作?
尘埃 2024-10-26 1611 145 0
PasteForm中,只要给对应的ListDto的Class标记bitch的属性,即可打开表格UI中的批量操作,然后结合业务函数,即可实现你自己的业务逻辑代码!

更多特性PasteForm的介绍,请前往PasteForm操作文档查看 PasteForm操作文档与介绍


前面介绍了PasteForm作为管理端表格和表单显示的新思路,在一次改版旧项目的时候,遇到新的需求,那就是批量操作!
一般情况下,我们的表格数据大概如下图这样显示
图片alt
如果要引入批量操作,一般的需求就是选择,也就是选择数据项的ID,作为一个IDS集合,然后执行业务逻辑!
所以PasteForm的思路是,保持PasteForm的文件内容和结构,然后把业务代码在公共函数中处理,比如../lib/api.js中
图片alt
如上图,表示给这个表添加了2个批量操作,一个是批量启用,一个是批量禁用
那么要显示数据前面的checkbox和上面的“批量启动”,”批量禁用”,在dto中是如何实现的?
在对应的dto中的clss添加对应的属性bitch

    ///<summary>
    ///测试表 用于测试CURD的表
    ///</summary>
    [PasteBitch("批量启用", "global_bitch_state(this,1)")]
    [PasteBitch("批量禁用", "global_bitch_state(this,0)")]
    public class TestTableListDto : EntityDto<int>
    {
        ///<summary>
        ///姓名 模拟短文本输入
        ///</summary>
        public string Name { get; set; }


    }

注意看上面的global_bitch_state,这个就是你自己定义的函数了,在案例项目中,我是把global_bitch_state写入到../lib/api.js中的,这样pasteform里面的代码就不会被污染了!
我们来看看,PasteBitch里面是怎么定义的

    /// <summary>
    /// 批量操作
    /// </summary>
    public class PasteBitchAttribute : ColumnDataTypeAttribute
    {

        /// <summary>
        /// 
        /// </summary>
        /// <param name="_name"></param>
        /// <param name="_script"></param>
        /// <param name="_iconfont"></param>
        public PasteBitchAttribute(string _name, string _script, string _iconfont = "")
        {
            base.Name = "bitch";
            base.Args1 = _name;
            base.Args2 = _script;
            base.Args3 = _iconfont;
        }
    }

会发现其实和menu的设定是一样的
再看看文档说明

bitch

用户表格数据中的批量操作,示例<input type="button" class="btn btntool" value="args1" onclick="args2">

字段 类型 示例 说明
args1 字符 编辑 按钮的名称
args2 字符 open_view(<%:=item.id%>); onclick事件的代码
args3 字符 Hui-iconfont-menu 暂未实现,预留给图标用
args4 字符 预留字段

至于样式啥的,后续再修改哈!

评论列表
尘埃
145 1611 0
快捷注册
热门推荐更多
PasteTalk
是在线客服系统更是在线营销系统,引入特有的页面话序机制,能够针对不同访客实现丰富的营销话语,提高开发效率!引入分词功能提升关键字命中概率,提高服务质量!;
最新动态
  • 218.****.141 正在查看 贴代码框架PasteForm特性介绍之query,linkquery(参数,传递参数) !
  • 218.****.141 正在查看 贴代码框架PasteForm特性介绍之query,linkquery(参数,传递参数) !
  • 190.****.28 正在查看 PasteTemplate之接口的授权实现,非JWT方式 !
  • 190.****.28 正在查看 PasteTemplate之接口的授权实现,非JWT方式 !
  • 230.****.230 正在查看 记PasteSpider部署工具的Windows.IIS版本开发过程之草稿-动态表单(2) !
  • 230.****.230 正在查看 记PasteSpider部署工具的Windows.IIS版本开发过程之草稿-动态表单(2) !
  • 49.****.73 正在查看 PasteSpider部署工具介绍,为啥说是开发专属部署工具,看这篇就够了! !
  • 49.****.73 正在查看 PasteSpider部署工具介绍,为啥说是开发专属部署工具,看这篇就够了! !
  • 177.****.22 正在查看 最佳CRUD实践之联动管理端,API和小程序之实际案例改造分享(四) !
  • 177.****.22 正在查看 最佳CRUD实践之联动管理端,API和小程序之实际案例改造分享(四) !
  • 181.****.76 正在查看 PasteSpider的运行条件之SVNManage中Hook的配置 !
欢迎加入QQ讨论群 296245685 [PasteSpider]介绍 [PasteForm]介绍 @2022-2023 PasteCode.cn 版权所有 ICP证 闽ICP备2021013869号-2