采购药品明细保存
来源:互联网 发布:淘宝怎么刷好评步骤 编辑:程序博客网 时间:2024/04/29 01:51
需求
用户将药品添加到采购单中,首先确定药品的采购量。
操作方法:
进入采购单修改页面
输入药品的采购量
点击“保存采购药品信息”
约束条件:
指定采购单下的药品设置采购量
设置采购量必须是大于0的数
1、 采购单未提交或审核不通过方可添加药品
2、 交易价小于等中标价格
数据库操作:
更新采购单明细表(Yycgdmx)记录
更新需要的数据:
采购单id、药品信息id
更新内容:中标价格、交易价格、采购量、采购金额
*中标价格 就是当前药品信息的价格
*交易价格:不允许大于中标价格
*采购量:整数
*采购金额:交易价格*采购量
dao
根据采购单id和药品id更新采购单明细表中采购量、采购金额
使用自定义mapper
service
接口功能:根据采购单id和药品id更新采购单明细表中采购量、采购金额
接口参数:采购单id、药品id、采购量(将此字段封装到pojo对象中)
//修改医药采购单明细采购量信息
@Override
publicvoid updateYycgdmx(Stringyycgdid, String ypxxid, Integer cgl)
throws Exception {
Stringbusinessyear =yycgdid.substring(0, 4);
//根据采购单id和药品id获取采购单明细记录
Yycgdmxyycgdmx = this.findYycgdmxByYycgdIdAndYpxxId(yycgdid,ypxxid);
if (yycgdmx ==null) {
ResultUtil.throwExcepion(ResultUtil.createFail(Config.MESSAGE, 501,
null));
}
//校验采购量
if (cgl ==null || cgl <= 0) {
ResultUtil.throwExcepion(ResultUtil.createFail(Config.MESSAGE, 561,
null));
}
//计算采购金额
Floatjyjg = yycgdmx.getJyjg();
//采购金额
Floatcgje = jyjg * cgl;
//定义一个更新对象
Yycgdmxyycgdmx_update = newYycgdmx();
yycgdmx_update.setId(yycgdmx.getId());
yycgdmx_update.setCgl(cgl);
yycgdmx_update.setCgje(cgje);
//设置年份
yycgdmx_update.setBusinessyear(businessyear);
yycgdmxMapper.updateByPrimaryKeySelective(yycgdmx_update);
}
action
批量提交参数:
采购单id:单个(在form中定义hidden)
药品id:多个参数(datagird中定义hidden)
采购量:多个参数(datagird中定义hidden)
使用List<YycgdmxCustom> yycgdmxCustoms接收批量参数
// 采购单药品保存
@RequestMapping("/savecgl")
public@ResponseBody
SubmitResultInfosavecgl(String id,//采购单id
YycgdQueryVoyycgdQueryVo, int[]indexs // 页面选择序号
)throwsException {
//页面提交的业务数据(多个),要处理的业务数据,页面中传入的参数
List<YycgdmxCustom>list = yycgdQueryVo.getYycgdmxCustoms();
//处理数据的总数
int count = indexs.length;
//处理成功的数量
int count_success = 0;
//处理失败的数量
int count_error = 0;
//处理失败的原因
List<ResultInfo>msgs_error = newArrayList<ResultInfo>();
for (int i = 0; i < count;i++) {
ResultInforesultInfo = null;
// 根据选中行的序号获取要处理的业务数据(单个)
YycgdmxCustomyycgdmxCustom = list.get(indexs[i]);
Stringypxxid = yycgdmxCustom.getYpxxid();//药品信息id
Integercgl = yycgdmxCustom.getCgl();//采购量
try {
cgdService.updateYycgdmx(id,ypxxid, cgl);
}catch(Exception e) {
e.printStackTrace();
// 进行异常解析
if (einstanceofExceptionResultInfo) {
resultInfo= ((ExceptionResultInfo) e).getResultInfo();
}else{
// 构造未知错误异常
resultInfo= ResultUtil.createFail(Config.MESSAGE, 900,
null);
}
}
if (resultInfo ==null) {
// 说明成功
count_success++;
}else{
count_error++;
// 记录失败原因
msgs_error.add(resultInfo);
}
}
页面
- 采购药品明细保存
- 采购药品明细删除
- 采购单药品明细采购金额总计
- 收货明细得到采购明细代码!
- 医药采购之药品目录导入
- 医药采购之采购单明细列表查询
- 医药采购之采购单明细添加查询
- 医药采购之采购单明细添加提交方法
- 医药采购之供货商药品目录维护查询
- 医药采购之供货商药品目录添加查询
- 医药采购之供货商药品目录添加提交
- 医药采购之供货商药品目录删除
- 医药采购之供货商药品目录控制
- SSM项目-医药采购-08 药品目录导出
- SSM项目-医药采购-09 药品目录导入
- SSM项目-医药采购-10 供货商药品目录模块
- 查询药品明细表里储备为空时遇到的问题
- 批处理 记录 事件日期,保存事件明细
- 用PHP实现享元FlyWeight模式
- 移动可用代理ip
- Curator之recipes之Counters
- Anroid ListView分组和悬浮Header实现
- ogg之ddl配置
- 采购药品明细保存
- 字符串与16进制的转换
- Adjtimex介绍
- Gentoo下打开windows txt文件中文乱码问题
- Xcode 导入头文件自动补齐
- 图片加载利器——Picasso
- 信息安全与密码学4-图解公钥与私钥的使用
- 菜单选项按钮(1)
- 卸载LINUX自带的JDK——linux-jdk-java