This commit is contained in:
linfso 2024-08-15 07:10:13 +08:00
parent 37724de566
commit 40ed351762
4 changed files with 56 additions and 11 deletions

View File

@ -121,7 +121,7 @@ public class EmisSettleBill extends BaseEntity
private String confirmCenterManCode;
/* 财务确认站点 */
private String confirmCenterCode;
/* 站点确认状态 0-待确认 1-已确认 2-驳回 */
/* 站点确认状态 0-待确认 1-已确认 2-驳回 3-账单异常 */
private String blConfirmSite;
/* 站点确认日期 */
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")

View File

@ -29,6 +29,9 @@ public interface IEmisSettleBillService
public EmisSettleBill selectEmisSettleBillById(Long id);
public EmisSettleBill selectEmisSettleBillBySettleBillNo(String settleBillNo);
/**
* 查询结算总账单列表
*
@ -59,10 +62,10 @@ public interface IEmisSettleBillService
public int removeSubBillFromSettleBill(EmisSettleBill emisSettleBill) throws EmisBizError;
public int reCalcSettleBillFee(EmisSettleBill emisSettleBill) throws EmisBizError;
/**
/**
* 修改结算总账单
*
* @param emisSettleBill 结算总账单

View File

@ -58,6 +58,14 @@ public class EmisSettleBillServiceImpl extends EmisBaseService implements IEmisS
}
@Override
public EmisSettleBill selectEmisSettleBillBySettleBillNo(String settleBillNo)
{
return emisSettleBillMapper.selectSettleBillBySettleBillNo(settleBillNo);
}
/**
* 查询结算总账单列表
@ -272,7 +280,8 @@ public class EmisSettleBillServiceImpl extends EmisBaseService implements IEmisS
* @return
* @throws EmisBizError
*/
private int reCalcSettleBillFee(EmisSettleBill old) throws EmisBizError {
@Override
public int reCalcSettleBillFee(EmisSettleBill old) throws EmisBizError {
// 计算应收总账单金额
// 检查子账单是否可加入
@ -326,6 +335,19 @@ public class EmisSettleBillServiceImpl extends EmisBaseService implements IEmisS
// emisSettleBill.setRecMoney(sendMoneySum);
// 如果有已收款,则更新收款状态为部分收款
if(emisSettleBill.getRecedMoney() !=null
&& emisSettleBill.getRecedMoney().compareTo(BigDecimal.ZERO)>0
){
// 账单总金额大于收款总金额
if(totalRecMoney.compareTo(emisSettleBill.getRecedMoney())>0){
// 部分收款
emisSettleBill.setPaymentStatus("2");
}
}
//发票状态不改变
// 账单总金额
return emisSettleBillMapper.updateEmisSettleBill(emisSettleBill);
}

View File

@ -19,8 +19,11 @@ import com.xdadan.erp.emis.domain.enumtype.EmisBizErrorType;
import com.xdadan.erp.emis.domain.exception.EmisBizError;
import com.xdadan.erp.emis.domain.vo.WaybillOrder;
import com.xdadan.erp.emis.service.EmisBaseService;
import com.xdadan.erp.emis.service.IEmisSettleBillService;
import com.xdadan.erp.emis.service.IEmisWaybillService;
import com.xdadan.erp.emis.utils.WaybillHelper;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.xdadan.erp.emis.mapper.EmisWaybillAjustApplyMapper;
@ -42,6 +45,9 @@ public class EmisWaybillAjustApplyServiceImpl extends EmisBaseService implements
@Autowired
private IEmisWaybillService emisWaybillService;
@Autowired
private IEmisSettleBillService emisSettleBillService;
/**
* 查询运单调整申请
*
@ -180,7 +186,12 @@ public class EmisWaybillAjustApplyServiceImpl extends EmisBaseService implements
// 获取账单状态,若账单处于非未确认状态,不允许审核
List<EmisSettleSubBill> emisSettleSubBillList=getSettleSubBillListByBillCode(emisWaybillAjustApply.getBillCode());
if(emisSettleSubBillList!=null && emisSettleSubBillList.size()>0){
if(!CollectionUtils.isEmpty(emisSettleSubBillList)){
if(emisSettleSubBillList.size()>1){
throw new EmisBizError(EmisBizErrorType.FAIL,"已拆子账单,不允许修改!");
}
for (EmisSettleSubBill emisSettleSubBill:emisSettleSubBillList) {
if("1".equals(emisSettleSubBill.getBlConfirmCenter())){
throw new EmisBizError(EmisBizErrorType.FAIL,"财务已确认账单,不允许审核,请先取消财务确认!");
@ -188,12 +199,6 @@ public class EmisWaybillAjustApplyServiceImpl extends EmisBaseService implements
}
}
// 运单更新
JSONObject jsonObject = JSONObject.parseObject(emisWaybillAjustApply.getJsonData());
JSONObject newValueJObj=jsonObject.getJSONObject("newValue");
@ -207,6 +212,21 @@ public class EmisWaybillAjustApplyServiceImpl extends EmisBaseService implements
emisWaybillService.reUpdateWayBill(emisWaybillOld,emisWaybillSave);
// 重新计算总账单费用
// 获取账单是否已经被合并,若合并则更新账单费用
if(!CollectionUtils.isEmpty(emisSettleSubBillList)) {
// 如果只有一个子账单,则更新总账单
if(emisSettleSubBillList.size()==1) {
EmisSettleSubBill emisSettleSubBill=emisSettleSubBillList.get(0);
if(!StringUtils.isEmpty(emisSettleSubBill.getSettleBillNo())) {
EmisSettleBill old=emisSettleBillService.selectEmisSettleBillBySettleBillNo(emisSettleSubBill.getSettleBillNo());
if(old!=null) {
emisSettleBillService.reCalcSettleBillFee(old);
}
}
}
}
// 审核通过
return emisWaybillAjustApplyMapper.auditCenterPass(emisWaybillAjustApply);