Commit 9f2be3b8 authored by 季圣华's avatar 季圣华
Browse files

解决bug:会员的预付款能扣成负的

parent b201858e
...@@ -132,6 +132,9 @@ public class DepotHeadService { ...@@ -132,6 +132,9 @@ public class DepotHeadService {
if(dh.getTotalPrice() != null) { if(dh.getTotalPrice() != null) {
dh.setTotalPrice(dh.getTotalPrice().abs()); dh.setTotalPrice(dh.getTotalPrice().abs());
} }
if(dh.getDeposit() == null) {
dh.setDeposit(BigDecimal.ZERO);
}
if(StringUtil.isNotEmpty(dh.getSalesMan())) { if(StringUtil.isNotEmpty(dh.getSalesMan())) {
dh.setSalesManStr(personService.getPersonByMapAndIds(personMap,dh.getSalesMan())); dh.setSalesManStr(personService.getPersonByMapAndIds(personMap,dh.getSalesMan()));
} }
...@@ -750,7 +753,13 @@ public class DepotHeadService { ...@@ -750,7 +753,13 @@ public class DepotHeadService {
/**入库和出库处理预付款信息*/ /**入库和出库处理预付款信息*/
if(BusinessConstants.PAY_TYPE_PREPAID.equals(depotHead.getPayType())){ if(BusinessConstants.PAY_TYPE_PREPAID.equals(depotHead.getPayType())){
if(depotHead.getOrganId()!=null) { if(depotHead.getOrganId()!=null) {
supplierService.updateAdvanceIn(depotHead.getOrganId(), BigDecimal.ZERO.subtract(depotHead.getTotalPrice())); BigDecimal currentAdvanceIn = supplierService.getSupplier(depotHead.getOrganId()).getAdvanceIn();
if(currentAdvanceIn.compareTo(depotHead.getTotalPrice())>=0) {
supplierService.updateAdvanceIn(depotHead.getOrganId(), BigDecimal.ZERO.subtract(depotHead.getTotalPrice()));
} else {
throw new BusinessRunTimeException(ExceptionConstants.DEPOT_HEAD_MEMBER_PAY_LACK_CODE,
String.format(ExceptionConstants.DEPOT_HEAD_MEMBER_PAY_LACK_MSG));
}
} }
} }
//根据单据编号查询单据id //根据单据编号查询单据id
...@@ -817,7 +826,13 @@ public class DepotHeadService { ...@@ -817,7 +826,13 @@ public class DepotHeadService {
/**入库和出库处理预付款信息*/ /**入库和出库处理预付款信息*/
if(BusinessConstants.PAY_TYPE_PREPAID.equals(depotHead.getPayType())){ if(BusinessConstants.PAY_TYPE_PREPAID.equals(depotHead.getPayType())){
if(depotHead.getOrganId()!=null){ if(depotHead.getOrganId()!=null){
supplierService.updateAdvanceIn(depotHead.getOrganId(), BigDecimal.ZERO.subtract(depotHead.getTotalPrice().subtract(preTotalPrice))); BigDecimal currentAdvanceIn = supplierService.getSupplier(depotHead.getOrganId()).getAdvanceIn();
if(currentAdvanceIn.compareTo(depotHead.getTotalPrice())>=0) {
supplierService.updateAdvanceIn(depotHead.getOrganId(), BigDecimal.ZERO.subtract(depotHead.getTotalPrice().subtract(preTotalPrice)));
} else {
throw new BusinessRunTimeException(ExceptionConstants.DEPOT_HEAD_MEMBER_PAY_LACK_CODE,
String.format(ExceptionConstants.DEPOT_HEAD_MEMBER_PAY_LACK_MSG));
}
} }
} }
/**入库和出库处理单据子表信息*/ /**入库和出库处理单据子表信息*/
...@@ -937,6 +952,9 @@ public class DepotHeadService { ...@@ -937,6 +952,9 @@ public class DepotHeadService {
if(dh.getTotalPrice() != null) { if(dh.getTotalPrice() != null) {
dh.setTotalPrice(dh.getTotalPrice().abs()); dh.setTotalPrice(dh.getTotalPrice().abs());
} }
if(dh.getDeposit() == null) {
dh.setDeposit(BigDecimal.ZERO);
}
if(dh.getOperTime() != null) { if(dh.getOperTime() != null) {
dh.setOperTimeStr(getCenternTime(dh.getOperTime())); dh.setOperTimeStr(getCenternTime(dh.getOperTime()));
} }
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment