|
|
@@ -442,4 +442,54 @@ public class GeneralBillServiceImpl extends ServiceImpl<GeneralBillMapper, Gener
|
|
|
return declare;
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public List<GeneralBill> getDetail(GeneralBill bills) {
|
|
|
+ if (ObjectUtils.isNull(bills.getMblno()) &&
|
|
|
+ ObjectUtils.isNull(bills.getHblno()) &&
|
|
|
+ ObjectUtils.isNull(bills.getRefno())
|
|
|
+ ) {
|
|
|
+ throw new RuntimeException("缺少必要参数");
|
|
|
+ }
|
|
|
+ LambdaQueryWrapper<GeneralBill> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ lambdaQueryWrapper.eq(ObjectUtils.isNotNull(bills.getBusinessType()), GeneralBill::getBusinessType, bills.getBusinessType())
|
|
|
+ .like(ObjectUtils.isNotNull(bills.getMblno()), GeneralBill::getMblno, bills.getMblno())
|
|
|
+ .like(ObjectUtils.isNotNull(bills.getHblno()), GeneralBill::getHblno, bills.getHblno())
|
|
|
+ .like(ObjectUtils.isNotNull(bills.getRefno()), GeneralBill::getRefno, bills.getRefno())
|
|
|
+ .eq(GeneralBill::getIsDeleted, 0)
|
|
|
+ .eq(GeneralBill::getTenantId, AuthUtil.getTenantId())
|
|
|
+ .eq(GeneralBill::getStatus, 3);
|
|
|
+ if (!AuthUtil.getUserRole().contains("admin") && !AuthUtil.getUserRole().contains("财务")) {
|
|
|
+ lambdaQueryWrapper.apply("find_in_set(team_id,'" + AuthUtil.getPostId() + "')");
|
|
|
+ }
|
|
|
+ if (!AuthUtil.getUserRole().contains("admin")) {
|
|
|
+ lambdaQueryWrapper.eq(GeneralBill::getBranchId, deptUtils.getDeptPid());
|
|
|
+ }
|
|
|
+ List<GeneralBill> billsList = baseMapper.selectList(lambdaQueryWrapper);
|
|
|
+ if (billsList.isEmpty()) {
|
|
|
+ throw new RuntimeException("未查到单据信息");
|
|
|
+ }
|
|
|
+ for (GeneralBill detail : billsList) {
|
|
|
+ detail.setFeeCenterListC(feeCenterService.list(new LambdaQueryWrapper<FeeCenter>()
|
|
|
+ .eq(FeeCenter::getIsDeleted, 0)
|
|
|
+ .eq(FeeCenter::getTenantId, AuthUtil.getTenantId())
|
|
|
+ .eq(FeeCenter::getBillType, detail.getBillType())
|
|
|
+ .eq(FeeCenter::getPid, detail.getId())
|
|
|
+ .eq(FeeCenter::getDc, "C")
|
|
|
+ .eq(FeeCenter::getAccStatus, 1)
|
|
|
+ .eq(FeeCenter::getBillNo, detail.getBillNo())
|
|
|
+ ));
|
|
|
+ detail.setFeeCenterListD(feeCenterService.list(new LambdaQueryWrapper<FeeCenter>()
|
|
|
+ .eq(FeeCenter::getIsDeleted, 0)
|
|
|
+ .eq(FeeCenter::getTenantId, AuthUtil.getTenantId())
|
|
|
+ .eq(FeeCenter::getBillType, detail.getBillType())
|
|
|
+ .eq(FeeCenter::getPid, detail.getId())
|
|
|
+ .eq(FeeCenter::getDc, "D")
|
|
|
+ .eq(FeeCenter::getAccStatus, 1)
|
|
|
+ .eq(FeeCenter::getBillNo, detail.getBillNo())
|
|
|
+ ));
|
|
|
+ }
|
|
|
+
|
|
|
+ return billsList;
|
|
|
+ }
|
|
|
+
|
|
|
}
|