043医疗项目-模块四:采购单模块—采购单明细查询(Dao,Service,Action三层)
前一篇文章我们做的是在医院的角度上添加在采购单里面添加药品。这一篇文章是查看我们添加的采购单信息。
我们先看一下要实现的效果:当:

按下确认添加时,会在这里

显示出刚才添加的数据。
好,我们就来做这个效果:
还是三层:Sql->Mapper->Service->Action。
sql的写法我们要看需求 (看需要查什么)

sql如下:
一共两个Sql:
<!-- 采购单药品明细查询列表 -->
select yycgdmx.id yycgdmxid,
useryy.id useryyid,
useryy.mc useryymc,
ypxx.id,
ypxx.bm,
ypxx.mc,
ypxx.jx,
ypxx.gg,
ypxx.zhxs,
ypxx.scqymc,
ypxx.spmc, ypxx.jyzt, (select info
from dictinfo
where ypxx.jyzt = dictcode
and typecode = '') jyztmc,
yycgdmx.zbjg,
yycgdmx.jyjg,
yycgdmx.cgl,
yycgdmx.cgje,
yycgdmx.cgzt,
(select info
from dictinfo
where typecode = ''
and dictcode = yycgdmx.cgzt) cgztmc,
usergys.mc usergysmc,
usergys.id usergysid from yycgdmx2014 yycgdmx, yycgd2014 yycgd, useryy, ypxx, usergys
where yycgdmx.yycgdid = yycgd.id
and yycgd.useryyid = useryy.id
and yycgdmx.ypxxid = ypxx.id
and yycgdmx.usergysid = usergys.id --数据范围设定
--只查询某个采购单下药品明细
and yycgdmx.yycgdid = ''
<!-- 采购单药品明细查询列表总数 -->
select
count(*)
from yycgdmx2014 yycgdmx, yycgd2014 yycgd, useryy, ypxx, usergys
where yycgdmx.yycgdid = yycgd.id
and yycgd.useryyid = useryy.id
and yycgdmx.ypxxid = ypxx.id
and yycgdmx.usergysid = usergys.id --数据范围设定
--只查询某个采购单下药品明细
and yycgdmx.yycgdid = ''
我们再去写Mapper:
<!-- 采购单药品明细查询列表 -->
<select id="findYycgdmxList" parameterType="yycg.business.pojo.vo.YycgdQueryVo"
resultType="yycg.business.pojo.vo.YycgdmxCustom">
<!-- 引入分页头 -->
<include refid="yycg.base.commonSql.page_start" /> select yycgdmx.id yycgdmxid,
useryy.id useryyid,
useryy.mc useryymc,
ypxx.id,
ypxx.bm,
ypxx.mc,
ypxx.jx,
ypxx.gg,
ypxx.zhxs,
ypxx.scqymc,
ypxx.spmc, ypxx.jyzt, (select info
from dictinfo
where ypxx.jyzt =
dictcode
and typecode = '003') jyztmc,
yycgdmx.zbjg,
yycgdmx.jyjg,
yycgdmx.cgl,
yycgdmx.cgje,
yycgdmx.cgzt,
(select info
from dictinfo
where
typecode = '011'
and dictcode = yycgdmx.cgzt) cgztmc,
usergys.mc
usergysmc,
usergys.id usergysid from yycgdmx${businessyear} yycgdmx,
yycgd${businessyear} yycgd, useryy,
ypxx, usergys
where yycgdmx.yycgdid
= yycgd.id
and yycgd.useryyid = useryy.id
and yycgdmx.ypxxid = ypxx.id
and yycgdmx.usergysid = usergys.id <!-- 只查询某个采购单下药品明细 -->
<include refid="query_yycgdmx_where" />
<!-- 药品查询条件 -->
<include refid="yycg.business.dao.mapper.YpxxMapperCustom.query_ypxx_where" /> <!-- 分页尾部 -->
<include refid="yycg.base.commonSql.page_end" />
</select>
<!-- 采购单药品明细查询列表总数 -->的mapper代码
<!-- 采购单药品明细查询列表总数 -->
<select id="findYycgdmxCount" parameterType="yycg.business.pojo.vo.YycgdQueryVo"
resultType="int"> select count(*) from yycgdmx${businessyear} yycgdmx,
yycgd${businessyear} yycgd, useryy,
ypxx, usergys
where yycgdmx.yycgdid
= yycgd.id
and yycgd.useryyid = useryy.id
and yycgdmx.ypxxid = ypxx.id
and yycgdmx.usergysid = usergys.id <!-- 只查询某个采购单下药品明细 -->
<include refid="query_yycgdmx_where" />
<!-- 药品查询条件 -->
<include refid="yycg.business.dao.mapper.YpxxMapperCustom.query_ypxx_where" /> </select>
我们再去写Service:
先写接口public interface YycdgService
/* <!-- 添加采购药品明细查询列表 -->*/
public List<YycgdmxCustom> findYycgdmxList(String yycgdid,
YycgdQueryVo yycgdQueryVo) throws Exception; /* <!-- 添加采购药品明细查询列表总数 -->*/
public int findYycgdmxCount(String yycgdid, YycgdQueryVo yycgdQueryVo)
throws Exception;
再写继承类,函数:
/* <!-- 添加采购药品明细查询列表 -->*/
@Override
public List<YycgdmxCustom> findYycgdmxList(String yycgdid,
YycgdQueryVo yycgdQueryVo) throws Exception {
// 非空判断
yycgdQueryVo = yycgdQueryVo != null ? yycgdQueryVo : new YycgdQueryVo(); // 通过采购单id得到年份
String businessyear = yycgdid.substring(0, 4); // 在service设置固定业务参数
YycgdmxCustom yycgdmxCustom = yycgdQueryVo.getYycgdmxCustom();
if (yycgdmxCustom == null) {
yycgdmxCustom = new YycgdmxCustom();
}
yycgdmxCustom.setYycgdid(yycgdid);
yycgdQueryVo.setYycgdmxCustom(yycgdmxCustom); // 设置年份
yycgdQueryVo.setBusinessyear(businessyear); return yycgdMapperCustom.findYycgdmxList(yycgdQueryVo);
}
/* <!-- 添加采购药品明细查询列表总数 -->*/
@Override
public int findYycgdmxCount(String yycgdid, YycgdQueryVo yycgdQueryVo)
throws Exception {
// 非空判断
yycgdQueryVo = yycgdQueryVo != null ? yycgdQueryVo : new YycgdQueryVo();
// 通过采购单id得到年份
String businessyear = yycgdid.substring(0, 4);
// 在service设置固定业务参数
YycgdmxCustom yycgdmxCustom = yycgdQueryVo.getYycgdmxCustom();
if (yycgdmxCustom == null) {
yycgdmxCustom = new YycgdmxCustom();
}
yycgdmxCustom.setYycgdid(yycgdid);
yycgdQueryVo.setYycgdmxCustom(yycgdmxCustom);
// 设置年份
yycgdQueryVo.setBusinessyear(businessyear);
return yycgdMapperCustom.findYycgdmxCount(yycgdQueryVo);
}
最后写Action层:
/* <!-- 添加采购药品明细查询列表 -->*/
@RequestMapping("/queryYycgdmx_result")
public @ResponseBody DataGridResultInfo queryYycgdmx_result(String id,YycgdQueryVo yycgdQueryVo,int page,int rows) throws Exception
{ // 查询数据总数
int total = yycdgService.findYycgdmxCount(id, yycgdQueryVo); // 分页参数
PageQuery pageQuery = new PageQuery();
pageQuery.setPageParams(total, rows, page);
// 设置分页参数
yycgdQueryVo.setPageQuery(pageQuery); // 分页查询
List<YycgdmxCustom> list = yycdgService.findYycgdmxList(id,
yycgdQueryVo); DataGridResultInfo dataGridResultInfo = new DataGridResultInfo();
dataGridResultInfo.setTotal(total);
dataGridResultInfo.setRows(list); // dataGridResultInfo.setFooter(footer);
return dataGridResultInfo; }
页面代码如下:
//加载datagrid(采购单明细列表)
$(function() {
$('#yycgdmxlist').datagrid({
title : '采购药品列表',
showFooter:true,//是否显示总计行
striped : true,
url : '${baseurl}cgd/queryYycgdmx_result.action',//这里边后边带了一个参数,所以form中不需要此参数yycgdid
queryParams:{//url的参数,初始加载datagrid时使用的参数
id:'${yycgd.id}'//yycgdid是参数名称,如果参数名称中间有点,将参数用单引号括起来
},
idField : 'yycgdmxid',//采购药品明细id
//frozenColumns : frozenColumns,
columns : columns,
pagination : true,
rownumbers : true,
showFooter:true,//显示总计
toolbar : toolbar,
loadMsg:"",
pageList:[15,30,50,100]
} );
});
043医疗项目-模块四:采购单模块—采购单明细查询(Dao,Service,Action三层)的更多相关文章
- 044医疗项目-模块四:采购单模块—采购单保存(Dao,Service,Action三层)
我们上上一篇文章(042医疗项目-模块四:采购单模块-采购单明细添加查询,并且把数据添加到数据库中)做的工作是把数据插入到了数据库,我们这篇文章做的是042医疗项目-模块四:采购单模块-采购单明细添加 ...
- 048医疗项目-模块四:采购单模块—采购单受理(Dao,Service,Action三层)
需求: 我们之前把采购单交给监督单位审核了,审通过的采购单就要受理.供货商决定采购单发不发货. 说明: 我们要查的就是登录的供货商的要提供的采购药品,我们查看的是采购单详细表,至于查询条件我们用的是就 ...
- 047医疗项目-模块四:采购单模块—采购单审核提交(Dao,Service,Action三层)
我们之前把采购单都审核了,这篇文章说的就是审核之后提交. 其实就是改变(update)采购单的审核状态. 需求: 用户要先查看采购单的内容. 查看采购单页面:页面布局同采购单修改页面. 选择审核结果. ...
- 046医疗项目-模块四:采购单模块—采购单审核(Dao,Service,Action三层)
当医院把采购单提交之后,由监管单位进行采购单审核,由卫生院及卫生局进行审核.卫生局可以审核所有医院创建的采购单,卫生院只审核本辖区医院创建的采购单. 操作流程: 点击"采购单审核" ...
- 045医疗项目-模块四:采购单模块—采购单提交(Dao,Service,Action三层)
我们之前做的就是采购单的编辑,在采购单里面添加了药品,然后我们这篇文章要做的就是说提交这个采购单. 当我们创建完成采购单,确定采购单不再修改,需要提交采购单,由监管单位进行审核. 我们在提交这个采购单 ...
- 010医疗项目-模块一:用户添加的实现(Dao,Service,Action,增加页面调试,提交页面调试)
要实现的效果:
- 模块四-shutil模块
shutil模块 高级的文件处理模块 主要是文件的处理,移动,压缩和解压缩 shutil模块的使用方法: shutil.copyfile()#拷贝文件 shutil.copy()#拷贝文件和权限 sh ...
- 常见模块(四) os模块
注: os模块是实现python程序对操作系统(operation system)的操作 1.对文件或者目录进行删除或者创建的相关操作 # os.rename("b"," ...
- 010商城项目:商品类目的选择——Dao,Service.Action层的分析
我们现在开始写商品类选择这个功能: 先看效果: 当我们点击"新增商品"---->"选择目录"然后从数据库中查出来数据并显示了. 我们分析数据库的那张表: ...
随机推荐
- 【转】iOS应用崩溃日志分析
作为一名应用开发者,你是否有过如下经历? 为确保你的应用正确无误,在将其提交到应用商店之前,你必定进行了大量的测试工作.它在你的设备上也运行得很好,但是,上了应用商店后,还是有用户抱怨会闪退 ! ...
- GridView 和DataGrid区别
转自:http://blog.csdn.net/51357/article/details/1480599 近期在维护一个vs2008开发的项目(该项目是从Vs2013拷贝升级过来的),发现不同时期按 ...
- python里面出现中文的时候报错 'ascii' codec can't encode characters in position
编码问题,在头部添加 import sys reload(sys) sys.setdefaultencoding( "utf-8" ) http://www.xuebuyuan.c ...
- 天书笔记:HTML+CSS实现顶部导航栏
此笔记纯属本人脑残笔记,阅读困难不理解属正常现象,初学者尽量不要阅读,否则轻则口吐白沫重则走火入魔,切记切记 先晒效果图: 效果要求类似于b站的顶部导航(..原谅我老是拿b站做例子:) ) 然后是代码 ...
- [MySQL Reference Manual] 6 安全性
6. 安全性 在Mysql安装配置时要考虑安全性的影响,以下几点: Ÿ 常规因素影响安全性 Ÿ 程序自身安全性 Ÿ 数据库内部的安全性,即,访问控制 Ÿ 网络安全性和系统安全性 Ÿ ...
- 【SQL篇章--基于MySQL5.7--创建用户】
SQL: 创建用户:>=MySQL5.7.6 查看用户: mysql> select user,host,authentication_string from mysql.user; ...
- 深入理解Nginx之调试优化技巧
在开发过程中,我们经常会碰到段错误等异常,这时我们需要有相应的机制来进行调试,特别是服务提供在线上时,面对大量的日志信息,合理的调试处理机制对于开发来说是一件非常重要的事情,幸好Nginx本身提供了很 ...
- JS实现别踩白块小游戏
最近有朋友找我用JS帮忙仿做一个别踩白块的小游戏程序,但他给的源代码较麻烦,而且没有注释,理解起来很无力,我就以自己的想法自己做了这个小游戏,主要是应用JS对DOM和数组的操作. 程序思路:如图:将游 ...
- Android中dip、dp、sp、pt和px的区别
1.概述 过去,程序员通常以像素为单位设计计算机用户界面.例如:图片大小为80×32像素.这样处理的问题在于,如果在一个每英寸点数(dpi)更高的新显示器上运行该程序,则用户界面会显得很小.在有些情况 ...
- Android 项目中文件夹的说明与作用(转)
(转自:http://blog.csdn.net/goodshot/article/details/11529731) Android 项目中文件夹的作用 1. src:存放所有的*.java源程序. ...