java mybaits 调用存储过程

@Override
public BaseResultMessage saveOrderConfirm(String billNo) {

BaseResultMessage rm = Utils.renderDefaultResultMessageError();

PointProcedureDto pointProcedure = new PointProcedureDto();
pointProcedure.setBillNo(billNo);
pointProcedure.setBillType(Constants.WECHAT_BILLTYPE);
pointProcedure.setCompanyFlag(Constants.WETHAT_NUM);
pointProcedure.setSzRetMessage("");
try {
wxOrderMapper.exeProSaleOrder(pointProcedure);
// 回调信息
if (null == pointProcedure.getSzRetMessage() || !"".equals(pointProcedure.getSzRetMessage())) {
logger.error("==> 执行存储过异常!");
logger.info(pointProcedure.getSzRetMessage());
//throw new AbortException(pointProcedure.getSzRetMessage());

} else {
// 修改状态
int a = wxOrderMapper.updateIfendor(billNo, Constants.WECHAT_BILLTYPE, "cust_sales_order_booking_main");
int b = wxOrderMapper.updateIfendor(billNo, Constants.WECHAT_BILLTYPE,
"cust_sales_order_booking_detail");

if (a > 0 && b > 0) {
return Utils.baseDefaultResultMessageSuccess();
} else {
logger.info("==> 保存主表:" + (a > 0 ? "成功" : "失败") + ",保存明细表:" + (a > 0 ? "成功" : "失败"));
return Utils.renderBaseResultMessageError("审核出错!");
}
}
} catch (AbortException e) {
e.printStackTrace();
}

return rm;
}

===================

HashMap<String,Object> pararmMap = new HashMap<String,Object>();
pararmMap.put("barcode", sdd.getBarcode());
pararmMap.put("custNo", sdd.getCustNo());
pararmMap.put("custName", sdd.getCustName());
pararmMap.put("projectNo", sdd.getProjectNo());
pararmMap.put("projectName", sdd.getProjectName());
pararmMap.put("xsddDzid", sdd.getXsddDzid());
pararmMap.put("itemNo", sdd.getItemNo());
pararmMap.put("shDate", sdd.getShDate());
pararmMap.put("lvDate", sdd.getLvDate());
pararmMap.put("skuEnd", sdd.getSkuEnd());
pararmMap.put("mano", sdd.getMano());
pararmMap.put("exYsdm", sdd.getExYsdm());
pararmMap.put("spLength", sdd.getSpLength());
pararmMap.put("spMqName", sdd.getSpMqName());
pararmMap.put("squeezeDate", sdd.getSqueezeDate());
pararmMap.put("pspTime", sdd.getPspTime());
pararmMap.put("pxpTime", sdd.getPxpTime());
pararmMap.put("bcpIndate", sdd.getBcpIndate());
pararmMap.put("bcpOutdate", sdd.getBcpOutdate());
pararmMap.put("cpIndate", sdd.getCpIndate());
pararmMap.put("cpOutdate", sdd.getCpOutdate());
try {
wxOrderMapper.findByBarCode(pararmMap);
logger.info("获取存储过程执行结束后的返回值:"+pararmMap.toString());
sdd.setCustNo((String) pararmMap.get("custNo"));
sdd.setCustName((String) pararmMap.get("custName"));
sdd.setProjectNo((String) pararmMap.get("projectNo"));
sdd.setProjectName((String) pararmMap.get("projectName"));
sdd.setXsddDzid((String) pararmMap.get("xsddDzid"));
sdd.setItemNo((String) pararmMap.get("itemNo"));
sdd.setShDate( DateUtils.dateToString((Date)pararmMap.get("shDate")) );
sdd.setLvDate( DateUtils.dateToString((Date)pararmMap.get("lvDate")));
sdd.setSkuEnd((String) pararmMap.get("skuEnd"));
sdd.setMano((String) pararmMap.get("mano"));
sdd.setExYsdm((String) pararmMap.get("exYsdm"));
sdd.setSpLength((BigDecimal) pararmMap.get("spLength"));
sdd.setSpMqName((String) pararmMap.get("spMqName"));
sdd.setSqueezeDate( DateUtils.dateToString((Date)pararmMap.get("squeezeDate")));
sdd.setPspTime( DateUtils.dateToString((Date)pararmMap.get("pspTime")));
sdd.setPxpTime( DateUtils.dateToString((Date)pararmMap.get("pxpTime")));
sdd.setBcpIndate( DateUtils.dateToString((Date)pararmMap.get("bcpIndate")));
sdd.setBcpOutdate( DateUtils.dateToString((Date)pararmMap.get("bcpOutdate")));
sdd.setCpIndate( DateUtils.dateToString((Date)pararmMap.get("cpIndate")));
sdd.setCpOutdate( DateUtils.dateToString((Date)pararmMap.get("cpOutdate")));
}catch(Exception e) {
e.printStackTrace();
}
return sdd;

=====

<!-- 扫一扫查询防伪 -->
<select id="findByBarCode" parameterType="java.util.Map" statementType="CALLABLE" >
<![CDATA[{
call PRO_GET_BARCODE_TRACE(
#{barcode,mode=IN,jdbcType=VARCHAR},
#{custNo,mode=OUT,jdbcType=VARCHAR},
#{custName,mode=OUT,jdbcType=VARCHAR},
#{projectNo,mode=OUT,jdbcType=VARCHAR},
#{projectName,mode=OUT,jdbcType=VARCHAR},
#{xsddDzid,mode=OUT,jdbcType=VARCHAR},
#{itemNo,mode=OUT,jdbcType=VARCHAR},
#{shDate,mode=OUT,jdbcType=DATE},
#{lvDate,mode=OUT,jdbcType=DATE},
#{skuEnd,mode=OUT,jdbcType=VARCHAR},
#{mano,mode=OUT,jdbcType=VARCHAR},
#{exYsdm,mode=OUT,jdbcType=VARCHAR},
#{spLength,mode=OUT,jdbcType=DECIMAL},
#{spMqName,mode=OUT,jdbcType=VARCHAR},
#{squeezeDate,mode=OUT,jdbcType=DATE},
#{pspTime,mode=OUT,jdbcType=DATE},
#{pxpTime,mode=OUT,jdbcType=DATE},
#{bcpIndate,mode=OUT,jdbcType=DATE},
#{bcpOutdate,mode=OUT,jdbcType=DATE},
#{cpIndate,mode=OUT,jdbcType=DATE},
#{cpOutdate,mode=OUT,jdbcType=DATE}
)
}]]>
</select>

https://blog.csdn.net/yan_tu/article/details/76087456

原文地址:https://www.cnblogs.com/gzhbk/p/11966460.html