个人技术交流、合作群:376447127,我分享了使用jplogic来进行企业基础模块项目的开发的相关方法,每一个模块都使用平台通用的UI控件,控件本身绑定了相应的校验功能、以及权限控制属性等,组件还可以更根据客户需要定制扩展其他的特性,极强的组件复用性。
接下来我分享“人员信息管理”模块主要的核心代码人员信息管理使用了的这些UI控件,组织机构管理主界面如下图所示:
使用示例
通过在jsp中创建grid组件 ,大多数情况下grid组件 遵循相同的结构定义格式,简单的定义组件的属性便可生成界面美观的Grid组件;同时可以绑定该组件上的一些事件等
如下是代码实例:
异步请求:
var url = "BPHandler?_bpForm=org.jplogic.system.web.view.webform.UserInfoMngForm&_operate=editPeople&selectedId="+selectedId+"&depId="+depId+"&personId="+personId;
var data = formOperate.AjaxCall(url,false,'ajaxbtneditpeopleBack');//同以下注释代码功能 ,返回的值可作为其他业务判断使用
回调:
//异步请求回调函数,编辑人员
function ajaxbtneditpeopleBack(data){
var dataObj = eval("(" + data + ")");
if(dataObj.result=='true'){
PeopleEditForm = OpenBlWindows('编辑人员窗口','','','PeopleEditForm',960,450,'jsp/JpSystem/PeopleEditForm.jsp?selectedtmpId4='+selectedtmpId4,false,'',true,true,true,true);
}else if(dataObj.result=='selectedIdIsNull'){
OpenBlDialog('编辑人员窗口','编辑人员窗口识为空!','WARN','','','okOperate()','noOperate()','','');
}else if(dataObj.result=='noEditEntitiy'){
OpenBlDialog('编辑人员窗口','编辑人员窗口标识为空!','WARN','','','okOperate()','noOperate()','','');
}else if(dataObj.result=='false'){
OpenBlDialog('编辑人员窗口','编辑人员窗口异常!','ERROR','','','okOperate()','noOperate()','','');
}
}
服务端业务代码:
if("ConditionQuery".equals(operateType)){//条件查询
//获得请求参数
String OrgName = GeneralHelper.safeString(this.requestParamResolver.getStringParam("OrgName"));
String PersonName =GeneralHelper.safeString( this.requestParamResolver.getStringParam("PersonName"));
String Sex = GeneralHelper.safeString(this.requestParamResolver.getStringParam("Sex"));
if(OrgName.equals("")&&PersonName.equals("")&&Sex.equals("")){
list = JpPersonDao.findAll();
}else if(OrgName.trim().equals("")&&PersonName.trim().equals("")&&!Sex.trim().equals("")){
String hql = " select distinct person from JpPerson person where person.sex=? ";
list = JpPersonDao.QueryRecordsByOriginal(hql, new Object[]{Sex.trim()});
}else if(OrgName.trim().equals("")&&!PersonName.trim().equals("")&&!Sex.trim().equals("")){
String hql = " select distinct person from JpPerson person where person.personName like ? and person.sex=? ";
list = JpPersonDao.QueryRecordsByOriginal(hql, new Object[]{'%'+PersonName.trim()+'%',Sex.trim()});
}else if(!OrgName.trim().equals("")&&!PersonName.trim().equals("")&&!Sex.trim().equals("")){
String hql = " select distinct person from JpPerson person where person.personName like ? and person.sex=? and person.jpOrgDepparts.depName like ?";
list = JpPersonDao.QueryRecordsByOriginal(hql, new Object[]{'%'+PersonName.trim()+'%',Sex.trim(),'%'+OrgName.trim()+'%'});
}else if(!OrgName.trim().equals("")&&!PersonName.trim().equals("")&&Sex.trim().equals("")){
String hql = " select distinct person from JpPerson person where person.personName like ? and person.jpOrgDepparts.depName like ?";
list = JpPersonDao.QueryRecordsByOriginal(hql, new Object[]{'%'+PersonName.trim()+'%','%'+OrgName.trim()+'%'});
}else if(!OrgName.trim().equals("")&&PersonName.trim().equals("")&&!Sex.trim().equals("")){
String hql = " select distinct person from JpPerson person where person.sex=? and person.jpOrgDepparts.depName like ?";
list = JpPersonDao.QueryRecordsByOriginal(hql, new Object[]{Sex.trim(),'%'+OrgName.trim()+'%'});
}else if(OrgName.trim().equals("")&&!PersonName.trim().equals("")&&Sex.trim().equals("")){
String hql = " select distinct person from JpPerson person where person.personName like ? ";
list = JpPersonDao.QueryRecordsByOriginal(hql, new Object[]{'%'+PersonName.trim()+'%'});
}else if(!OrgName.trim().equals("")&&PersonName.trim().equals("")&&Sex.trim().equals("")){
String hql = " select distinct person from JpPerson person where person.jpOrgDepparts.depName like ?";
list = JpPersonDao.QueryRecordsByOriginal(hql, new Object[]{'%'+OrgName.trim()+'%'});
}
}else{
list = JpPersonDao.findAll();
}
} catch (Exception e) {
e.printStackTrace();
}
GridTable table = new GridTable();
List<GridRow> rows = new ArrayList<GridRow>();
if(list!=null&&list.size()>0){
for (JpPerson ds : list) {
GridRow row = new GridRow();
Map datas = new HashMap();
datas.put("jpid", GeneralHelper.safeString(ds.getJpid()));
datas.put("personName", GeneralHelper.safeString(ds.getPersonName()));
datas.put("sex", GeneralHelper.safeString(ds.getSex()));
datas.put("nation", GeneralHelper.safeString(ds.getNation()));
datas.put("mob", GeneralHelper.safeString(ds.getMob()));
datas.put("EMail", GeneralHelper.safeString(ds.getEMail()));
datas.put("address", GeneralHelper.safeString(ds.getAddress()));
datas.put("note", GeneralHelper.safeString(ds.getNote()));
row.setId(ds.getJpid());
row.setData(datas);
rows.add(row);
}
}
table.setRows(rows);
provider.provider(table, req, res, requestParamResolver);
新增人员实例,如下图:
从界面上看,人员表单数据追加了相应的数据验证功能,提示用户数据正确的数据,确保数据的完整性、安全性和准确新
分享到:
相关推荐
),基于Springcloud企业级微服务架构的快速开发脚手架,除了能够快速的构建权限管理系统之外同时也能够 快速基于该脚手架快速构建企业级产品(互联网APP、SAAS系统等),并提供相关Springcloud微服务架构运维监控...
Matlab领域上传的视频均有对应的完整代码,皆可运行,亲测可用,适合小白; 1、代码压缩包内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主或扫描视频QQ名片; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作
Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。
Matlab领域上传的视频均有对应的完整代码,皆可运行,亲测可用,适合小白; 1、代码压缩包内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主或扫描视频QQ名片; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作
Matlab领域上传的视频均有对应的完整代码,皆可运行,亲测可用,适合小白; 1、代码压缩包内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主或扫描视频QQ名片; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作
金融支付:浅析如何用定期资产设计活期产品.docx
Excel模板个人简历文艺清新单页06.docx
Matlab领域上传的视频均有对应的完整代码,皆可运行,亲测可用,适合小白; 1、代码压缩包内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主或扫描视频QQ名片; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作
吹瓶转线清线(清场)记录表.xls
支持win10,win11(21H2及以前版本)系统
Modbus Slave version 9.3.2 Build 2156, modbus 协议从机,非常好用,包括32位与64位
Excel模板个人简历稳重大气单页03.docx
11记录控制程序.doc
Matlab领域上传的视频均有对应的完整代码,皆可运行,亲测可用,适合小白; 1、代码压缩包内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主或扫描视频QQ名片; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作
第一步安装.zip
Node.js,简称Node,是一个开源且跨平台的JavaScript运行时环境,它允许在浏览器外运行JavaScript代码。Node.js于2009年由Ryan Dahl创立,旨在创建高性能的Web服务器和网络应用程序。它基于Google Chrome的V8 JavaScript引擎,可以在Windows、Linux、Unix、Mac OS X等操作系统上运行。 Node.js的特点之一是事件驱动和非阻塞I/O模型,这使得它非常适合处理大量并发连接,从而在构建实时应用程序如在线游戏、聊天应用以及实时通讯服务时表现卓越。此外,Node.js使用了模块化的架构,通过npm(Node package manager,Node包管理器),社区成员可以共享和复用代码,极大地促进了Node.js生态系统的发展和扩张。 Node.js不仅用于服务器端开发。随着技术的发展,它也被用于构建工具链、开发桌面应用程序、物联网设备等。Node.js能够处理文件系统、操作数据库、处理网络请求等,因此,开发者可以用JavaScript编写全栈应用程序,这一点大大提高了开发效率和便捷性。 在实践中,许多大型企业和组织已经采用Node.js作为其Web应用程序的开发平台,如Netflix、PayPal和Walmart等。它们利用Node.js提高了应用性能,简化了开发流程,并且能更快地响应市场需求。
Matlab领域上传的视频均有对应的完整代码,皆可运行,亲测可用,适合小白; 1、代码压缩包内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主或扫描视频QQ名片; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作
Matlab领域上传的视频均有对应的完整代码,皆可运行,亲测可用,适合小白; 1、代码压缩包内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主或扫描视频QQ名片; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作
C风险心理承受能力测试20210603.docx
HPLC实验报告.docx