完善单价录入的时候更新商品的价格的逻辑

This commit is contained in:
jishenghua
2024-02-23 17:32:15 +08:00
parent 148ab7c413
commit 1579018b6d
2 changed files with 13 additions and 2 deletions

View File

@@ -96,6 +96,11 @@ public class BusinessConstants {
public static final String SUB_TYPE_REPLAY = "盘点复盘"; public static final String SUB_TYPE_REPLAY = "盘点复盘";
public static final String SUB_TYPE_ASSEMBLE = "组装单"; public static final String SUB_TYPE_ASSEMBLE = "组装单";
public static final String SUB_TYPE_DISASSEMBLE = "拆卸单"; public static final String SUB_TYPE_DISASSEMBLE = "拆卸单";
/**
* 生产类型分类
* 生产入库
* */
public static final String BILL_TYPE_PRODUCE_IN = "生产入库";
/** /**
* 财务单据分类 * 财务单据分类
* 收款、付款 * 收款、付款

View File

@@ -666,7 +666,7 @@ public class DepotItemService {
//更新当前库存 //更新当前库存
updateCurrentStock(depotItem); updateCurrentStock(depotItem);
//更新商品的价格 //更新商品的价格
updateMaterialExtendPrice(materialExtend.getId(), depotHead.getSubType(), rowObj); updateMaterialExtendPrice(materialExtend.getId(), depotHead.getSubType(), depotHead.getBillType(), rowObj);
} }
//如果关联单据号非空则更新订单的状态,单据类型:采购入库单、销售出库单、盘点复盘单、其它入库单、其它出库单 //如果关联单据号非空则更新订单的状态,单据类型:采购入库单、销售出库单、盘点复盘单、其它入库单、其它出库单
if(BusinessConstants.SUB_TYPE_PURCHASE.equals(depotHead.getSubType()) if(BusinessConstants.SUB_TYPE_PURCHASE.equals(depotHead.getSubType())
@@ -863,7 +863,7 @@ public class DepotItemService {
* @param rowObj * @param rowObj
*/ */
@Transactional(value = "transactionManager", rollbackFor = Exception.class) @Transactional(value = "transactionManager", rollbackFor = Exception.class)
public void updateMaterialExtendPrice(Long meId, String subType, JSONObject rowObj) throws Exception { public void updateMaterialExtendPrice(Long meId, String subType, String billType, JSONObject rowObj) throws Exception {
if(systemConfigService.getUpdateUnitPriceFlag()) { if(systemConfigService.getUpdateUnitPriceFlag()) {
if (StringUtil.isExist(rowObj.get("unitPrice"))) { if (StringUtil.isExist(rowObj.get("unitPrice"))) {
BigDecimal unitPrice = rowObj.getBigDecimal("unitPrice"); BigDecimal unitPrice = rowObj.getBigDecimal("unitPrice");
@@ -878,6 +878,12 @@ public class DepotItemService {
if(BusinessConstants.SUB_TYPE_RETAIL.equals(subType)) { if(BusinessConstants.SUB_TYPE_RETAIL.equals(subType)) {
materialExtend.setCommodityDecimal(unitPrice); materialExtend.setCommodityDecimal(unitPrice);
} }
//其它入库-生产入库的情况更新采购单价
if(BusinessConstants.SUB_TYPE_OTHER.equals(subType)) {
if(BusinessConstants.BILL_TYPE_PRODUCE_IN.equals(billType)) {
materialExtend.setPurchaseDecimal(unitPrice);
}
}
materialExtendService.updateMaterialExtend(materialExtend); materialExtendService.updateMaterialExtend(materialExtend);
} }
} }