前一篇文章我们做的是在医院的角度上添加在采购单里面添加药品。这一篇文章是查看我们添加的采购单信息。

我们先看一下要实现的效果:当:

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

显示出刚才添加的数据。

好,我们就来做这个效果:

还是三层: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三层)的更多相关文章

  1. 044医疗项目-模块四:采购单模块—采购单保存(Dao,Service,Action三层)

    我们上上一篇文章(042医疗项目-模块四:采购单模块-采购单明细添加查询,并且把数据添加到数据库中)做的工作是把数据插入到了数据库,我们这篇文章做的是042医疗项目-模块四:采购单模块-采购单明细添加 ...

  2. 048医疗项目-模块四:采购单模块—采购单受理(Dao,Service,Action三层)

    需求: 我们之前把采购单交给监督单位审核了,审通过的采购单就要受理.供货商决定采购单发不发货. 说明: 我们要查的就是登录的供货商的要提供的采购药品,我们查看的是采购单详细表,至于查询条件我们用的是就 ...

  3. 047医疗项目-模块四:采购单模块—采购单审核提交(Dao,Service,Action三层)

    我们之前把采购单都审核了,这篇文章说的就是审核之后提交. 其实就是改变(update)采购单的审核状态. 需求: 用户要先查看采购单的内容. 查看采购单页面:页面布局同采购单修改页面. 选择审核结果. ...

  4. 046医疗项目-模块四:采购单模块—采购单审核(Dao,Service,Action三层)

    当医院把采购单提交之后,由监管单位进行采购单审核,由卫生院及卫生局进行审核.卫生局可以审核所有医院创建的采购单,卫生院只审核本辖区医院创建的采购单. 操作流程: 点击"采购单审核" ...

  5. 045医疗项目-模块四:采购单模块—采购单提交(Dao,Service,Action三层)

    我们之前做的就是采购单的编辑,在采购单里面添加了药品,然后我们这篇文章要做的就是说提交这个采购单. 当我们创建完成采购单,确定采购单不再修改,需要提交采购单,由监管单位进行审核. 我们在提交这个采购单 ...

  6. 010医疗项目-模块一:用户添加的实现(Dao,Service,Action,增加页面调试,提交页面调试)

    要实现的效果:

  7. 模块四-shutil模块

    shutil模块 高级的文件处理模块 主要是文件的处理,移动,压缩和解压缩 shutil模块的使用方法: shutil.copyfile()#拷贝文件 shutil.copy()#拷贝文件和权限 sh ...

  8. 常见模块(四) os模块

    注: os模块是实现python程序对操作系统(operation system)的操作 1.对文件或者目录进行删除或者创建的相关操作 # os.rename("b"," ...

  9. 010商城项目:商品类目的选择——Dao,Service.Action层的分析

    我们现在开始写商品类选择这个功能: 先看效果: 当我们点击"新增商品"---->"选择目录"然后从数据库中查出来数据并显示了. 我们分析数据库的那张表: ...

随机推荐

  1. NSURLConnection获取一个MP3文件

    NSURLConnection网络请求 直接上代码-这个没什么说的,你们自己有兴趣可以自己试试 代码 #import "ViewController.h" @interface V ...

  2. IOS动画

    基础动画 //创建基础动画    CABasicAnimation * basic = [CABasicAnimation animation];    //动画路径    basic.keyPath ...

  3. vs 只能没有智能提示的解决方法

    我vs今天出现一点比较诡异的情况,莫名奇妙就不能自动生成我拖的控件的后端代码了(****.aspx.designer.cs) 我在网上找了下,找到一个解决方法,这里把解决方法贴下来. 网上解决方法的出 ...

  4. 使用AS3输出ByteArray为16进制

    package { import flash.utils.ByteArray; /** * 输出ByteArray为16进制 * @author Rise */ public class Byte2H ...

  5. hypervisor与VMware共存方法

    bcdedit /set hypervisorlaunchtype offbcdedit /set hypervisorlaunchtype auto

  6. MicroStation VBA基础

    实习笔记1 2016年8月1日 14:12 Option Explicit 缺省情况下,如果使用一个没有声明的变量,它将继承“Variant”类型.在模块.窗体和类的通用声明区使用“OptionExp ...

  7. 【转】面向对象设计的SOLID原则

    S.O.L.I.D是面向对象设计和编程(OOD&OOP)中几个重要编码原则(Programming Priciple)的首字母缩写. SRP The Single Responsibility ...

  8. 软件开发与UML的关系

    今天,我们上<统一建模语言UML>.课上老师给我们讲解了软件开发与UML之间的关系:UML常用于建立软件系统的模型,适用于系统开发的不同阶段.UML的应用贯穿于系统开发的不同阶段.1.需求 ...

  9. GitHub Desktop 桌面工具,离线版本下载(无需考虑网络问题)

    http://pan.baidu.com/s/1qYq4X0C GitHub Desktop 桌面工具,离线版本下载 对于网络不好,不稳定,安装多次都不成功的,这是你们的最好的安装方法了.

  10. macbook安装win7

    通常大家都喜欢购买苹果电脑,因为配置高,速度快,但是却不喜欢使用ios系统,这时候需要在macbook上安装windows系统 全新的macbook进行windows的安装,基本大家都会,使用boot ...