驱动管理模块项目流程总结报告

来源:互联网 发布:excel如何合计数据 编辑:程序博客网 时间:2024/05/21 11:35

驱动管理功能总结


1、功能模块步骤

1.1、查询驱动管理左边所显示的“系统代码+系统名称”

1.2、新增驱动管理类型 

1.2、修改左边驱动管理,操作Sys_Code表 

1.3、删除单个“驱动管理左边列表” 

1.6、右边“驱动管理”查询 

1.4、新增右边“驱动管理”列表数据 

1.8、修改右边“驱动管理列表数据” 

1.9、删除右边列表数据 

2.0、搜索单个“系统数据字典”

一、驱动管理开发过程描述

 

I、驱动管理功能需求如下:

1、本模块涉及的表有如下几张 sys_code(系统代码表)和pkg_fields (报文配置属性列表), 表结构如下。

2、sys_code 表数据与页面之间的关系如图(1),pkg_fields表数据与页面之间的关系  如图(2)。

3、业务逻辑描述有如下几点:I、整体图如图(3)。II、此功能模块结构描述:左上边显示的是搜索框,其下边显示的内容来自于sys_code表中的,(父级代码)parent_code =“pkg_drv”下面的code+name的组合。——>同时也包含对syscode左边列表的增加、删除、修改。III、右边的内容是是根据左边的pkg_drv字段查询pkg_fields表里的内容数据——>并且包含对应的增删改等功能。

4、此处之所有有这功能是为了更好的用于报文配置,动态的配置值。如图(4),详细内容,我将会在报文管理中描述。

5、具体代码逻辑,将在下面一 一描述

 

sys_code表结构如下:

CREATE TABLE `sys_code` (

  `code` varchar(30) NOT NULL COMMENT '代码',

  `name` varchar(64) NOT NULL COMMENT '名称',

  `description` varchar(100) DEFAULT NULL COMMENT '描述',

  `parent_code` varchar(30) NOT NULL DEFAULT '0' COMMENT '父级代码',

  `sort` varchar(4) DEFAULT NULL COMMENT '排序号',

  `attribute` varchar(36) DEFAULT NULL COMMENT '属性',

  `create_by` varchar(32) DEFAULT NULL COMMENT '创建人',

  `create_date` varchar(14) DEFAULT NULL COMMENT '创建时间yyyyMMddHHmmss',

  `last_update_by` varchar(32) DEFAULT NULL COMMENT '最后修改人',

  `last_update_date` varchar(14) DEFAULT NULL COMMENT '最后修改时间yyyyMMddHHmmss',

  PRIMARY KEY (`parent_code`,`code`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='系统代码表';

 

 

 

 

pkg_fields表结构如下:

CREATE TABLE `pkg_fields` (

  `pkg_drv` varchar(16) NOT NULL COMMENT '拆包驱动:sys_code.pkg_drv',

  `pkg_type` varchar(10) NOT NULL COMMENT '拆包类型:trade;node;',

  `field_name` varchar(40) NOT NULL COMMENT '报文字段',

  `description` varchar(40) DEFAULT NULL COMMENT '描述',

  `field_type` varchar(20) DEFAULT NULL COMMENT '报文字段类型:text;select;radio;textarea;',

  `field_attr` varchar(30) DEFAULT NULL COMMENT '报文字段属性,field_type为select,radio则需配置此属性,对应sys_code',

  `comments` varchar(40) DEFAULT NULL COMMENT '备注',

  `create_by` varchar(32) DEFAULT NULL COMMENT '创建人',

  `create_date` varchar(14) DEFAULT NULL COMMENT '创建时间yyyyMMddHHmmss',

  `last_update_by` varchar(32) DEFAULT NULL COMMENT '最后修改人',

  `last_update_date` varchar(14) DEFAULT NULL COMMENT '最后修改时间yyyyMMddHHmmss',

  PRIMARY KEY (`pkg_drv`,`pkg_type`,`field_name`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='报文配置属性列表';


图1


图2

图3


图4

1、功能模块步骤

1.1、查询驱动管理左边所显示的“系统代码+系统名称”

I、进入驱动管理先将sys_code表里的,(父级代码)parent_code =“pkg_drv”的数据以“系统代码+系统名称”查询出来并且显示的Controller请求方法如下:


IIService接口以及ServiceImpl如下:



III、对应的Dao以及Dao.xml文件如下:



IV、返回页面渲染 如下图所示:



1.2、新增驱动管理类型

一、

I、首先界面触发图(9)II、对应的jsp页面触发方法如图(10)III、对应的js方法如图(11)

IV、弹出showmodel层如图(12),以及其提交新增列表数据、点击提交获取数据对应的js文件如图(13)


图9


图10


图11


图12


图13

V、发送ajax方法,请求Controller


VI、执行对应的Controller方法。


VII、执行对应的Service以及对应的ServiceImp方法



VIII对应的Mapper接口,以及对应的xml都是通用生成的方法,直接调用就好了。



1.2、修改左边驱动管理,操作Sys_Code表

I、首先在页面找到修改驱动列表相关的摁钮——>先去执行getPkgFieldType将数据查询出来,并且成功后,将其分别填入列表中——>showmodel弹出层,js如下图所示:


II、对弹出的修改页面进行获取数据,并且点击提交,如下代码:



III、请求ajax方法。


IV、对应执行的Controller方法如图所示:


VService接口以及ServiceImpl实现如下图:


VI对应的Mapper接口,以及对应的xml都是通用生成的方法,直接调用就好了。


1.3、删除单个“驱动管理左边列表”

I、执行对应的js以及jsp页面



II、执行对应的Controller


III、执行对应的Service以及对应的ServiceImpl




IV对应的Mapper接口,以及对应的xml都是通用生成的方法,直接调用就好了。

1.6、右边“驱动管理”查询

I

II、执行ajax方法


III、执行对应的Controller


IV、对应的ServiceServiceImpl实现方法


V、对应的Mapper是自动生成的。这里就做过多的解释了。


1.4、新增右边“驱动管理”列表数据

作用于:新增驱动管理

步骤一、

I、showmodel


II、获取到数据然后去发送ajax方法


III执行ajax方法,返回controller 


二、

I、执行新增驱动的Controller


II、对应的Service接口,以及ServiceImpl实现如下:



III、对应的Mapper接口,以及实现是通用的生成的方法。

注意:页面select对应“下拉”切换text对应“input

<option value="domain_align" <c:if test="${pkgfieldsInfo.fieldType=='text'}">style="display:none;"</c:if> <c:if test="${pkgfieldsInfo.fieldAttr =='domain_align'}"> selected</c:if>>domain_align</option>

<option value="YorN"         <c:if test="${pkgfieldsInfo.fieldType=='text'}">style="display:none;"</c:if> <c:if test="${pkgfieldsInfo.fieldAttr =='YorN'}"> selected</c:if>>YorN</option>

<option value="domain_type"  <c:if test="${pkgfieldsInfo.fieldType=='text'}">style="display:none;"</c:if> <c:if test="${pkgfieldsInfo.fieldAttr =='domain_type'}"> selected</c:if>>domain_type</option>


I、点击保存是触发的方法,在页面上给了其button一个onclick事件。页面如下图:


Js如下图:


发送ajax方法如下


II、执行对应的Controller


III、执行对应的Service以及对应的ServiceImpl





IV、对应的Mapper接口,以及实现是通用的生成的方法。



1.9、删除右边列表数据

I、删除对应的js方法


II、发送ajax方法



III、执行对应的Controller


IV、执行对应的Service以及对应的ServiceImpl



V对应的Mapper接口,以及对应的xml都是通用生成的方法,直接调用就好了。




2.0、搜索单个“系统数据字典”

I、执行对应的js

 


II、发送对应的ajax方法


III、执行对应的Controller


IV、当searchVal有值的时候执行对应的Service以及ServiceImpl实现



IV、执行当有搜索内容的时候:对应的搜索Dao以及对应的DaoIMp实现



V、执行搜索时没有内容的时候:执行对应的Service以及ServiceImpl实现



V、执行对应的Mapper方法,是通用生成的方法,此处就不过多的做解释了。