/** * 导入BpPointsDtl表 * * @param bpRedPointsShowPara * @param otherTxnsn */ private void impBpPointsDtl(BpRedPointsShow bpRedPointsShowPara, Long otherTxnsn, String action) { try { BpPointsDtl bpPointsDtlTmp = new BpPointsDtl(); bpPointsDtlTmp.setTxndate(bpRedPointsShowPara.getTxndate()); // 数据日期 bpPointsDtlTmp.setCustNo(bpRedPointsShowPara.getCustNo()); // 客户号 bpPointsDtlTmp.setPointsType(EnuPointsType.POINTS_TYPE_50.getCode()); // 积分类型 bpPointsDtlTmp.setPoints( ToolUtil.getNegativeBigDecimal(bpRedPointsShowPara.getPoints())); // 积分 bpPointsDtlTmp.setCrtDate(ToolUtil.getStrLastUpdDate()); // 创建日期YYYY-MM-DD bpPointsDtlTmp.setCrtTime(ToolUtil.getStrLastUpdTime()); // 创建时间HH:mm:ss bpPointsDtlTmp.setCrtOperId(operManager.getOperInfo().getOperId()); // 创建者ID if ("imp".equals(action)) { // 导入 bpPointsDtlTmp.setOrigin(EnuOrigin.ORIGIN_1.getCode()); // 数据来源:0_系统录入;1_系统外导入 bpPointsDtlTmp.setOtherTxnsn(otherTxnsn); // 外部系统流水号 } else { // 添加 bpPointsDtlTmp.setOrigin(EnuOrigin.ORIGIN_0.getCode()); // 数据来源:0_系统录入;1_系统外导入 } Long strSeqNo = (platformService.obtainSeqNo("POINTS_DTL_SEQNO")); bpPointsDtlTmp.setTxnsn(strSeqNo); // 交易流水号 String strBillNoTmp = ToolUtil.getStrToday() + "02" + strSeqNo; bpPointsDtlTmp.setBillNo(strBillNoTmp); // 回带订单号 bpRedPointsShowPara.setBillNo(strBillNoTmp); bpPointsDtlService.insertSelective(bpPointsDtlTmp); } catch (Exception e) { logger.error("BpPointsDtl导入失败!", e); } }
private Boolean preSubmitCheck(BpRedPointsShow bpRedPointsShowPara) { if (ToolUtil.getStrIgnoreNull(gmGoodsInfoShowAdd.getGoodsId()).length() == 0) { MessageUtil.addError("物品号不能为空,请输入物品号!"); return false; } List<BpCusts> gmBpCustsTmp = bpCustsService.getBpCustListByID(bpRedPointsShowPara.getCustNo()); if (gmBpCustsTmp == null || gmBpCustsTmp.size() <= 0) { MessageUtil.addError("该客户(" + bpRedPointsShowPara.getCustNo() + ")不存在,请确认您输入的客户号!"); return false; } List<GmGoodsInfo> gmGoodsInfoListTmp = gmGoodsInfoService.getGmGoodsInfoListByID(gmGoodsInfoShowAdd.getGoodsId()); if (gmGoodsInfoListTmp == null || gmGoodsInfoListTmp.size() <= 0) { MessageUtil.addError("该物品(" + gmGoodsInfoShowAdd.getGoodsId() + ")不存在,请确认您输入的物品号!"); return false; } BigDecimal bdCumuPoints = ToolUtil.getBdIgnoreNull(gmBpCustsTmp.get(0).getCumuPoints()); if (bdCumuPoints.compareTo(ToolUtil.getBdIgnoreNull(bpRedPointsShowPara.getPoints())) < 0) { MessageUtil.addError("该客户剩余积分(" + bdCumuPoints + ")不足本次捐赠,请确认您本次捐赠操作是否正确?"); return false; } Long storQty = ToolUtil.getLongIgnoreNull(gmGoodsInfoListTmp.get(0).getStorQty()); if (storQty < bpRedPointsShowPara.getGoodsQty()) { MessageUtil.addError("该物品库存量(" + storQty + ")不足本次捐赠,请确认您本次捐赠操作是否正确?"); return false; } return true; }