|
|
@@ -72,9 +72,9 @@ public class SettlementServiceImpl extends ServiceImpl<SettlementMapper, Settlem
|
|
|
Settlement model=new Settlement();
|
|
|
BeanUtils.copyProperties(settlementDTO,model);
|
|
|
List<Files> filesList = settlementDTO.getFilesList();
|
|
|
- List<Items> itemsList = settlementDTO.getItemsList();
|
|
|
+ List<Items> itemsList = settlementDTO.getItemsList();
|
|
|
//如果id=null, 无论主表还是从表, 必然都是新增
|
|
|
- Long id = settlementDTO.getId();
|
|
|
+ Long id = settlementDTO.getId();
|
|
|
if(id==null)
|
|
|
{
|
|
|
|
|
|
@@ -94,6 +94,7 @@ public class SettlementServiceImpl extends ServiceImpl<SettlementMapper, Settlem
|
|
|
e.setCreateUser(AuthUtil.getUserId());
|
|
|
e.setCreateDept(Long.valueOf(AuthUtil.getDeptId()));
|
|
|
itemsMapper.insert(e);
|
|
|
+ payAcc(settlementDTO,e);
|
|
|
});
|
|
|
}
|
|
|
}
|
|
|
@@ -119,6 +120,7 @@ public class SettlementServiceImpl extends ServiceImpl<SettlementMapper, Settlem
|
|
|
e.setCreateUser(AuthUtil.getUserId());
|
|
|
e.setCreateDept(Long.valueOf(AuthUtil.getDeptId()));
|
|
|
itemsMapper.insert(e);
|
|
|
+ payAcc(settlementDTO,e);
|
|
|
}
|
|
|
else
|
|
|
{
|
|
|
@@ -138,6 +140,19 @@ public class SettlementServiceImpl extends ServiceImpl<SettlementMapper, Settlem
|
|
|
|
|
|
}
|
|
|
|
|
|
+ public void payAcc(SettlementDTO settlementDTO,Items items)
|
|
|
+ {
|
|
|
+ Long accId = items.getAccId();
|
|
|
+ Acc acc = accMapper.selectById(accId);
|
|
|
+ if(acc==null)
|
|
|
+ {
|
|
|
+ throw new SecurityException("扣款账单失败");
|
|
|
+ }
|
|
|
+ //结算成功后,更新acc表金额,采购收费 销售付费
|
|
|
+ acc.setSettlementAmount(acc.getSettlementAmount()!=null?acc.getSettlementAmount().add(items.getAmount()):new BigDecimal("0").add(items.getAmount()));
|
|
|
+ accMapper.updateById(acc);
|
|
|
+ }
|
|
|
+
|
|
|
@Override
|
|
|
@Transactional
|
|
|
public void apply(List<Items> itemsList, String billType)
|
|
|
@@ -181,18 +196,42 @@ public class SettlementServiceImpl extends ServiceImpl<SettlementMapper, Settlem
|
|
|
items.forEach(e->{
|
|
|
Acc acc=new Acc();
|
|
|
BeanUtils.copyProperties(e,acc);
|
|
|
+ acc.setId(null);
|
|
|
acc.setAccSysNo(e.getSrcOrderno());
|
|
|
acc.setSrcParentId(e.getSrcParentId());
|
|
|
- acc.setBillType(e.getItemType());
|
|
|
acc.setBillType(settlement.getBillType());
|
|
|
acc.setCreateTime(new Date());
|
|
|
acc.setStatus(0);
|
|
|
acc.setCreateUser(AuthUtil.getUserId());
|
|
|
accMapper.insert(acc);
|
|
|
+
|
|
|
+ //绑定accId,从申请表传递给结算表,后续结算时操作账单表的结算金额
|
|
|
+ e.setAccId(acc.getId());
|
|
|
+ itemsMapper.updateById(e);
|
|
|
+
|
|
|
});
|
|
|
}
|
|
|
settlement.setCheckStatus("请核成功");
|
|
|
baseMapper.updateById(settlement);
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ @Transactional
|
|
|
+ public void paymentApply(List<Items> itemsList, String billType)
|
|
|
+ {
|
|
|
+ itemsList.forEach(e->{
|
|
|
+ Acc acc=new Acc();
|
|
|
+ BeanUtils.copyProperties(e,acc);
|
|
|
+ acc.setId(null);
|
|
|
+ acc.setAccSysNo(e.getSrcOrderno());
|
|
|
+ acc.setSrcParentId(e.getSrcParentId());
|
|
|
+ acc.setBillType(billType);
|
|
|
+ acc.setCreateTime(new Date());
|
|
|
+ acc.setStatus(0);
|
|
|
+ acc.setCreateUser(AuthUtil.getUserId());
|
|
|
+ accMapper.insert(acc);
|
|
|
+ });
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
}
|