This commit is contained in:
linfso 2025-07-04 10:03:56 +08:00
parent e38ed9da62
commit e841fc04c9

View File

@ -198,8 +198,8 @@ public class EmisTmsCostFeeServiceImpl extends EmisBaseService implements IEmisT
emisTmsCostFeeMapper.insertEmisTmsCostFee(emisTmsCostFee);
emisTmsSiteBatchMapper.updateEnteringStatus(emisTmsCostFee.getBatchNo());
// 计算分摊费用
// reCalcSplitCostFee(costNo);
// 计算成本分摊费用
reCalcCostFeeAll(costNo);
return 1;
}
@ -220,6 +220,7 @@ public class EmisTmsCostFeeServiceImpl extends EmisBaseService implements IEmisT
@Transactional
public int reCalcCostFeeByBillCode(String billCode) throws EmisBizError {
long start = System.currentTimeMillis();
// 获取运单基础数据
EmisWaybill waybill=emisWaybillMapper.selectWaybillBaseInfoByBillCode(billCode);
if(waybill==null){
@ -257,6 +258,9 @@ public class EmisTmsCostFeeServiceImpl extends EmisBaseService implements IEmisT
mergeCostFeeByBillCode(billCode);
long end = System.currentTimeMillis();
log.error("==reCalcCostFeeByBillCode==> escape time:" + (end - start) + "ms");
return 1;
}
@ -490,7 +494,7 @@ public class EmisTmsCostFeeServiceImpl extends EmisBaseService implements IEmisT
splitItem.setDestPlace(quotePriceItem.getNextSiteName());
splitItem.setBillMonth(DateUtils.parseDateToStr(DateUtils.YYYY_MM, waybill.getSendDate()));
splitItem.setTradeDate(waybill.getSignDate());
splitItem.setTradeDate(quotePriceItem.getEtd());
// 成本分摊
splitItem.setFeeType("1002"); // 网点机场短驳费
@ -680,12 +684,11 @@ public class EmisTmsCostFeeServiceImpl extends EmisBaseService implements IEmisT
mainWaybill=waybill;
}
// 计算固定成本费用-取件费
// 计算固定成本费用
reCalcFixedCostFee(billCode,mainBillCode,waybill,mainWaybill);
}
// 计算总批次的费用
reCalcCostFeeOnlyOne(costNo,null,false);
// 合并运单费用
@ -798,6 +801,7 @@ public class EmisTmsCostFeeServiceImpl extends EmisBaseService implements IEmisT
*/
@Override
public int reCalcCostFeeOnlyOne(String costNo,String calcBillCode,boolean isMerge) throws EmisBizError {
long start = System.currentTimeMillis();
// 获取最新的数据
EmisTmsCostFee oldCostFee = emisTmsCostFeeMapper.selectEmisTmsCostFeeByCostNo(costNo);
// /* 总票数 总重量 总体积 */
@ -982,6 +986,9 @@ public class EmisTmsCostFeeServiceImpl extends EmisBaseService implements IEmisT
}
}
}
long end = System.currentTimeMillis();
log.info("==reCalcCostFeeOnlyOne==> escape time:" + (end - start) + "ms");
return 1;
}
@ -1029,6 +1036,7 @@ public class EmisTmsCostFeeServiceImpl extends EmisBaseService implements IEmisT
log.info("==>费用计算:==>:{}:{}-{}=",mainBillCode+":"+billCode,updProfit.getBillFee(),updProfit.getCostFee(),updProfit.getBillProfit());
return 1;
}
@ -1106,7 +1114,7 @@ public class EmisTmsCostFeeServiceImpl extends EmisBaseService implements IEmisT
emisTmsCostFeeMapper.updateEmisTmsCostFee(emisTmsCostFee);
// 计算分摊费用
// reCalcCostFeeOnlyOne(costNo);
reCalcCostFeeAll(costNo);
return 1;
}
@ -1134,16 +1142,27 @@ public class EmisTmsCostFeeServiceImpl extends EmisBaseService implements IEmisT
* @param id TMS运输成本账单主键
* @return 结果
*/
@Transactional
@Override
public int deleteEmisTmsCostFeeById(Long id)
{
EmisTmsCostFee emisTmsCostFee=emisTmsCostFeeMapper.selectEmisTmsCostFeeById(id);
// 删除该成本关联的费用
emisTmsCostFeeSplitMapper.deleteEmisTmsCostFeeSplitByCostNo(emisTmsCostFee.getCostNo());
emisTmsCostFeeMapper.deleteEmisTmsCostFeeById(id);
// try {
// reCalcCostFeeOnlyOne(emisTmsCostFee.getCostNo());
// } catch (EmisBizError emisBizError) {
// emisBizError.printStackTrace();
// }
// 重新计算运单成本
List<CostFeeWaybillRel> listBillCodeRel=emisTmsCostFeeMapper.selectCostFeeRelListByCostNo(emisTmsCostFee.getCostNo());
if(!CollectionUtil.isEmpty(listBillCodeRel)){
for(CostFeeWaybillRel item:listBillCodeRel){
try {
mergeCostFeeByBillCode(item.getBillCode());
}catch (Exception ex){
ex.printStackTrace();
}
}
}
return 1;
}