HFun.快速开发平台(二)=》自定义列表实例(请求参数的处理)
上编自定义列表描述了自定义列表的基本实现功能,本此记录列表的请求过程。
个人比较喜欢对参数进行对象化,方便后续人维护及查看,先上代码:
/*********************************************************
* 开发人员:QLQ
* 创建时间:
* 描述说明:保存列表页面加载时的URL参数信息,并提交给底层进行页面数据加载工作
* 更改历史:2016-12-15 优化数据验证
*
* *******************************************************/ using System;
using System.Collections.Generic;
using System.Linq;
using System.Text; namespace HfQueryFrame.Func
{
[Serializable]
public class HfRequestParam
{
private string _QueryCode = string.Empty;
/// <summary>
/// 查询编号
/// </summary>
public string QueryCode
{
get
{
if (string.IsNullOrEmpty(_QueryCode))
{
throw new HfQueryPlatException("查询编号(QueryCode)参数无效!");
}
return _QueryCode;
}
set
{
if (string.IsNullOrEmpty(value))
{
throw new HfQueryPlatException("查询编号(QueryCode)参数无效!");
}
_QueryCode = value;
}
} private HfSystemFrame.ParamData.HfKeyValueParam _QueryCond = null;
/// <summary>
/// 默认查询条件(此参数需要进行参数替换,如用户、部门)
/// </summary>
public HfSystemFrame.ParamData.HfKeyValueParam QueryCond
{
get { return _QueryCond; }
set { _QueryCond = value; }
} private int _CurrentPage = ;
/// <summary>
/// 当前页
/// </summary>
public int CurrentPage
{
get { return _CurrentPage; }
set
{
if (value != _CurrentPage)
{
if (value < )
{
value = ;
}
else
{
_CurrentPage = value;
}
}
}
} private Func.HfQueryCriteria _AdvQueryString;
/// <summary>
/// 高级查询条件
/// </summary>
public Func.HfQueryCriteria AdvQueryString
{
get
{
if (_AdvQueryString == null)
{
_AdvQueryString = new HfQueryCriteria("");
}
return _AdvQueryString;
}
set { _AdvQueryString = value; }
} private string _ShowPageTitle = "Yes";
/// <summary>
/// 是否显示标题(默认为No)
/// </summary>
public string ShowPageTitle
{
get
{
if (string.IsNullOrEmpty(_ShowPageTitle))
_ShowPageTitle = "Yes";
return _ShowPageTitle;
}
set
{
if (string.IsNullOrEmpty(value))
{
_ShowPageTitle = "No";
}
else if (value != "Yes" && value != "No")
{
throw new HfQueryPlatException("查询参数(ShowPageTitle)无效!");
}
else
{
_ShowPageTitle = value;
}
}
} private string _IsReadOnly = "No";
/// <summary>
/// 是否为只读(不会显示任何操作按钮),只读为Yes,非只读为No,默认为No
/// </summary>
public string IsReadOnly
{
get
{
if (string.IsNullOrEmpty(_IsReadOnly))
_IsReadOnly = "No";
return _IsReadOnly;
}
set
{
if (string.IsNullOrEmpty(value))
{
_IsReadOnly = "No";
}
else if (value != "Yes" && value != "No")
{
throw new HfQueryPlatException("查询的参数(IsReadOnly)无效!");
}
else
{
_IsReadOnly = value;
}
}
} private string _QueryOrderby = string.Empty;
/// <summary>
/// 排序字段(如果为空,默认应用配置字段排序)
/// </summary>
public string QueryOrderby
{
get { return _QueryOrderby; }
set
{
if (value != _QueryOrderby)
{
_QueryOrderby = value ?? "";
}
}
} private string _QueryModel = "General";
/// <summary>
/// 列表模式,General(一般)、Dialog(弹出),系统默认为General
/// </summary>
public string QueryModel
{
get { return _QueryModel; }
set { _QueryModel = value; }
} private string _SelectType = string.Empty;
/// <summary>
/// 列表选择模式(只有标识为弹出框模式该项才有效),Single(单选)、Multiple(多选)
/// </summary>
public string SelectType
{
get { return _SelectType; }
set
{
if (QueryModel == "Dialog" && (value != "Single" && value != "Multiple"))
{
throw new HfQueryPlatException("查询的参数(SelectType)无效!");
}
_SelectType = value;
}
} /// <summary>
/// 是否分页,若不分页,value为No
/// </summary>
public string IsTurnPage { get; set; }
}
}
代码中将一个列表的基本数据参数列出,并对参数进行了基本的数据校验。
所有的列表请求方式基本相同,只是将编号及参数进行更换,如:
List.aspx?Code=Sys_SDFK3J9F4HG3G324G4G532HG5&Param=XXX&CurrentPage=
值得要说的是编号命名,必须要无规则!
列表参数如此,表单、流程等也基本这个思路,将参数对象化,方便维护。
【待续】
(欢迎转载,转载请注明:HFun.快速开发平台)
HFun.快速开发平台(二)=》自定义列表实例(请求参数的处理)的更多相关文章
- HFun.快速开发平台(二)=》自定义列表实例
应用系统中数据列表的展现是开发内容之一,实现的方式基本是通过编号具体的访问列表页实现,通过检索条件进行数据源的获取,列字段的描述,还可能会有检索条件的实现,列表数据的导出等功能. 为了将重复工作进行简 ...
- HFun.快速开发平台(四)=》自定义列表实例(请求参数的处理)
上编自定义列表描述了自定义列表的基本实现功能,本此记录列表的请求过程. 个人比较喜欢对参数进行对象化,方便后续人维护及查看,先上代码: /******************************* ...
- HFun.快速开发平台(五)=》自定义系统数据选择
本篇介绍HFun.快速开发平台的另一项系统常用功能:系统数据或参数选择,主要应用在表单录入中信息的选择,如类别,编号等.先贴出本系统实现的页面效果: 如上图所示,系统中将参数的选择统一展现为该方式,开 ...
- HFun.快速开发平台(一)=》简述
[——使用成熟的技术实现了解的业务,关注面向对象,关注业务领域] 偶然的机会又回到了园子,看到上次的文章已是N年前,洽巧近期正在开发一个小程序,标题定为“快速开发平台”有点夸张,算是给自己定个小目标. ...
- HFun.快速开发平台(三)=》通用系统用户选择
系统中用户的选择使用特别多,将该功能统一实现可提升系统效率. 用户的选择实现相对简单,系统中基本都会提供,HFun.快速开发平台中的实现特点主要有: 1.用户的选择分为单用户选择和多用户选择. 2.用 ...
- 如何提高码农产量,基于java的web快速开发平台之自定义表单开发随笔
老板 :下班前一定写完? 程序猿:可以,下班前能一定给! 第二天早上上班~~~ 老板:这都第二天了,怎么没写完? 程序猿:我还没有下班呢! 哎!程序猿的痛啊 公司上线的项目有不少销售记录表,又是报价单 ...
- java代码生成器 快速开发平台 二次开发 外包项目利器 springmvc SSM后台框架源码
. 权限管理:点开二级菜单进入三级菜单显示 角色(基础权限)和按钮权限 角色(基础权限): 分角色组和角色,独立分配菜单权限和增删改查权限. 按钮权限: 给角色分配按钮权限.2 ...
- jeesite快速开发平台(二)----环境搭建
转自:https://blog.csdn.net/u011781521/article/details/54880465
- 审核流(3)低调奢华,简单不凡,实例演示-SNF.WorkFlow--SNF快速开发平台3.1
下面我们就从什么都没有,结合审核流进行演示实例.从无到有如何快速完美的实现,然而如此简单.低调而奢华,简单而不凡. 从只有数据表通过SNF.CodeGenerator代码生成器快速生成单据并与审核流进 ...
随机推荐
- UVa 727 - Equation
题目大意:给一个中缀表达式,转换成后缀表达式. 这类题一直不太会,让我想就是建一棵表达式树,然后后续遍历算了,可是建树的过程实在太麻烦了.今天才看到有中缀表达式转换成后缀表达式的算法,可以用栈进行实现 ...
- ZipFile和ZipInputSteam解压zip文件
最近有个需求,要接受上穿的zip文件,解压后读取里面的文件(应该还有目录),提前储备一下需要的知识. 贴在博客上,有需要的可以参考. ZipInputStream解压文件: @Test public ...
- JMeter 连接数据库报错No suitable driver found for jdbc:xxxxxxxxx
添加JDBC Connection Configuration 和 JDBC Request 组件,添加相关信息 注意两个组件里面输入的Variable Name 必须一致 运行查看结果树出现如下错误 ...
- 【翻译】使用Visual Studio创建Asp.Net Core MVC (一)
This tutorial will teach you the basics of building an ASP.NET Core MVC web app using Visual Studio ...
- Apache自带压力测试工具ab用法简介
ab命令原理 ab命令会创建很多的并发访问线程,模拟多个访问者同时对某一URL进行访问.它的测试目标是基于URL的,因此,既可以用来测试Apache的负载压力,也可以测试nginx.lighthttp ...
- 《疯狂Java讲义》(七)---- 方法
一 方法的参数传递机制 Java方法的参数传递方式只有一种:值传递.就是将实际参数值的副本传入方法内,而参数本身不会受到任何影响. eg. 基本类型的值传递 public class Primitiv ...
- 其实想要完全理解MVC框架并不是太容易
完全理解MVC并不是很容易.使用MVC需要精心的计划,由于它的内部原理比较复杂,所以需要花费一些时间去思考.同时由于模型和视图要严格的分离,这样也给调试应用程序带来了一定的困难.每个构件在使用之前都需 ...
- win8 64位+Oracle 11g 64位下使用PL/SQL Developer 的解决办法
1)安装Oracle 11g 64位2)安装32位的Oracle客户端( instantclient-basic-win32-11.2.0.1.0)下载 instantclient-basic-win ...
- jQuery删除DOM节点
jQuery删除DOM节点 <%@ page language="java" import="java.util.*" pageEncoding=&quo ...
- cvc-complex-type.2.4.c: The matching wildcard...
在家里的电脑好好的,在单位的就不行,需要把web app libraties提到 最前面,然后clean一下项目