`
javandroid
  • 浏览: 25586 次
  • 性别: Icon_minigender_1
文章分类
社区版块
存档分类
最新评论

logistics-3-staff management

 
阅读更多
业务:
1.基础设计模块需求分析
( 基础数据:物流人员设置、区域设置、管理分区、管理定区/调度排班)
2.物流人员的增添、修改、批量作废(假删除)和分页列表查询

技术点:
1.easyUI完成form表单校验
2.datagrid实现分页查询(封装PaganationInfo类)
( Mybatis实现物理数据分页、oracle的分页查询)

02:【基础设置模块需求分析】

主要是针对本系统中的一些自定义项,需要参照录入,并作为统计分析和计算的维度,用户根据自己的需要动态设置的基础档案;对于自定义的档案支持多级定义;
系统会事先预置一些系统级别的基础档案,如员线路类型、保险类型等;客户根据自己的需要动态增加,主要是应用在参照录入;
此功能主要是为系统的可扩张性而设置的;
此功能主要应用角色是“系统管理员”;
目前需要在此设置的基础档案包括:线路类型、取派员类型、签收类型、保险类型、受理备注说明、配载信息、返货原因、消单原因、取消签收类型、返货拒绝类型、大物流类型。

数据字典功能
通常两张表。档案表和子档案表

这类数据字典信息,在开发中通常结合 缓存技术一起使用 。数据字典 属于 很多系统通用功能 !

区域设置:
录入物流业务所能覆盖区域 (行政区域 省、市、 区)
这些区域 基本信息无法修改 !

管理分区:
行政区域 通常比较大区域 ,例如: 北京 朝阳区
为区域 分配物流取派人员,必须将区域划分 为很多小的区域 ---- 分区

管理定区/调度排班
为分区指定 取派员,管理分区中的客户

总结:将行政区域分为多个分区,将多个分区按照地理位置等进行组合成逻辑上的定区。为定区指定取件员。

05:【取派员管理_添加功能】


08:【datagrid分页查询原理和PaginationInfo设计】

设计服务器分页程序----Model类:PaginationInfo

n封装分页查询请求参数

封装分页查询结果数据

/**
 * 分页 实体类 (封装分页请求和结果数据)
 * @author seawind
 *
 */
public class PaginationInfo<T> {
	/** 请求参数 */
	private int pagesize ; // 每页记录条数
	private int pageno ; // 页码
	
	private Map<String,Object> condition ; //通用条件对象
	
	/** 结果数据 */
	private int total ; // 总记录数
	private List<T> rows ; // 当前页显示数据
}


09:【取派员管理_分页列表查询功能】

1.

$('#grid').datagrid( {
	url: "${pageContext.request.contextPath}/staff_pageQuery.do", // 加载数据

StaffController添加查询方法


====分页查询采用数据库物理分页

MySQLselect*from表名limitstart,length;

Oracleselect*from(select表名.*,rownumRNfrom表名whererownum<last)

whereRN>=start;


BaseDAO定义分页方法

// 查询记录总数
public int findTotalCount();
	
// 通用查询当前页数据代码
public List<T> findPaginationData(int first , int last );

<!-- 查询记录总数 -->
<select id="findTotalCount" parameterType="java.lang.String" resultType="int">
 select count(*) from bc_staff
</select>

<!-- 查询当前页数据 -->
<select id="findPaginationData" resultMap="StaffResultMap">
<![CDATA[
	 select * from (select t.*,rownum RN from bc_staff t where rownum <= #{last}) where RN > #{first}
]]>
</select>


分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics