采购单药品明细采购金额总计

需求

用户在创建采购单,页面上明显统计出采购单中所有药品采购总量、采购金额总量。
这里写图片描述

总计范围:符合查询条件的所有记录的采购量、采购金额。

1.2 实现

1.2.1 dao
统计符合查询条件的采购单药品明细的采购量、采购金额。
实现思路:
对符合查询条件的采购单明细列表的采购量、采购金额求总和,注意不是对一页的数据求总计 。

select sum(nvl(yycgdmx.cgl, 0)) cgl, sum(nvl(yycgdmx.cgje, 0)) cgjefrom yycgdmx2014 yycgdmx, yycgd2014 yycgd, useryy, ypxx, usergyswhere yycgdmx.yycgdid = yycgd.idand yycgd.useryyid = useryy.idand yycgdmx.ypxxid = ypxx.idand yycgdmx.usergysid = usergys.id---指定采购单的idand yycgdmx.yycgdid='2014101220'mapper.xml
<select id="findYycgdmxListSum" parameterType="yycg.business.pojo.vo.YycgdQueryVo"resultType="yycg.business.pojo.vo.YycgdmxCustom">select sum(nvl(yycgdmx.cgl, 0)) cgl, sum(nvl(yycgdmx.cgje, 0)) cgjefrom yycgdmx${businessyear} yycgdmx, yycgd${businessyear} yycgd, useryy, ypxx, usergyswhere yycgdmx.yycgdid = yycgd.idand yycgd.useryyid = useryy.idand yycgdmx.ypxxid = ypxx.idand yycgdmx.usergysid = usergys.id<include refid="query_yycgdmx_where" /><include refid="query_yycgd_where" /><include refid="yycg.business.dao.mapper.YpxxMapperCustom.query_ypxx_where" />select>

Mapper.java

// 采购单药品明细查询列表金额总计(采购量,采购金额)public List findYycgdmxListSum(YycgdQueryVo yycgdQueryVo)throws Exception;

1.2.2 service

接口功能:采购单明细总计
接口参数:采购单id、查询条件

// 采购单药品明细查询列表总计(采购量,采购金额)@Overridepublic List findYycgdmxListSum(String yycgdid,YycgdQueryVo yycgdQueryVo) throws Exception {yycgdQueryVo = yycgdQueryVo != null ? yycgdQueryVo : new YycgdQueryVo();YycgdmxCustom yycgdmxCustom = yycgdQueryVo.getYycgdmxCustom();yycgdmxCustom = yycgdmxCustom != null ? yycgdmxCustom: new YycgdmxCustom();yycgdmxCustom.setYycgdid(yycgdid);yycgdQueryVo.setYycgdmxCustom(yycgdmxCustom);String businessyear = yycgdid.substring(0, 4);yycgdQueryVo.setBusinessyear(businessyear);return yycgdMapperCustom.findYycgdmxListSum(yycgdQueryVo);}

1.2.3 在datagrid中展示总计行

Datagird加载 的json中定义footer
这里写图片描述

1.2.4 action
在采购单修改action方法中,在采购单明细结果集json方法中,添加取总计结果集代码,将总计结果集添加datagrid的footer中。

实现方法:
在统一数据列表结果类(DataGridResultInfo)添加属性footer。

修改:CgdAction.java中queryYycgdmx_result方法。

if (total > 0) {List sumlist = cgdService.findYycgdmxListSum(id,yycgdQueryVo);dataGridResultInfo.setFooter(sumlist);}

1.2.5 页面
在加载明细列表的方法中,添加:

这里写图片描述
在datagrid中对总计行的显示样式和普通行的显示样式不一样,如何区别?
使用普通行中不为空的字段(列),作为区别的标记。

例如:
这里写图片描述


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部