feat: 打包管理条目 来款 开票 确收相关功能
This commit is contained in:
+4
@@ -75,6 +75,10 @@ public class PayIncomeContractCommon {
|
||||
* 6:标协证书项目
|
||||
*/
|
||||
public final static String PROJECT_TYPE6 = "6";
|
||||
/**
|
||||
* 7:打包项目
|
||||
*/
|
||||
public final static String PROJECT_TYPE7 = "7";
|
||||
/**
|
||||
* 来款状态 0:全部 1:到期未付款
|
||||
*/
|
||||
|
||||
+44
-1
@@ -45,6 +45,8 @@ import com.jero.member.mapper.*;
|
||||
import com.jero.member.service.*;
|
||||
import com.jero.modules.system.entity.SysUser;
|
||||
import com.jero.modules.system.service.ISysUserService;
|
||||
import com.jero.pack.entity.PayPackCompany;
|
||||
import com.jero.pack.service.IPayPackCompanyService;
|
||||
import com.jero.payment.service.IPayPaymentRecordService;
|
||||
import com.jero.project.entity.PayCommonProject;
|
||||
import com.jero.project.entity.PayWorkingGroup;
|
||||
@@ -156,6 +158,8 @@ public class PayMailBillServiceImpl extends ServiceImpl<PayMailBillMapper, PayMa
|
||||
private ITbCertificatePaymentService tbCertificatePaymentService;
|
||||
@Resource
|
||||
private PayWorkingGroupSubItemContactsMapper payWorkingGroupSubItemContactsMapper;
|
||||
@Resource
|
||||
private IPayPackCompanyService payPackCompanyService;
|
||||
|
||||
|
||||
@Override
|
||||
@@ -388,7 +392,22 @@ public class PayMailBillServiceImpl extends ServiceImpl<PayMailBillMapper, PayMa
|
||||
listId.add(meetingTemporary);
|
||||
}
|
||||
break;
|
||||
default:break;
|
||||
//打包项目
|
||||
case PayIncomeContractCommon.PROJECT_TYPE7:
|
||||
PayPackCompany payPackCompany = payPackCompanyService.getById(p.getProjectId());
|
||||
if (Objects.isNull(payPackCompany)) {
|
||||
throw new JeroBootException("项目不存在!");
|
||||
}
|
||||
PayContactsManagementTemporary payPackCompanyTemporary = payContactsManagementTemporaryService
|
||||
.getById(payPackCompany.getCompanyContactTemporaryId());
|
||||
if (!Objects.isNull(payPackCompanyTemporary)) {
|
||||
listId.add(payPackCompanyTemporary);
|
||||
}
|
||||
PayCompanyManagement company = payCompanyManagementService.getById(payPackCompany.getCompanyId());
|
||||
project = company.getCompanyName();
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
|
||||
}
|
||||
|
||||
@@ -953,6 +972,30 @@ public class PayMailBillServiceImpl extends ServiceImpl<PayMailBillMapper, PayMa
|
||||
//if(1!=tbMemberCertificate.getInAccount()){
|
||||
// return "标协证书项目必须先审核通过才可开票";
|
||||
//}
|
||||
// 普通项目
|
||||
case PayIncomeContractCommon.PROJECT_TYPE7:
|
||||
PayPackCompany payPackCompany = payPackCompanyService.getById(bmpList.get(i).getProjectId());
|
||||
//将第一个项目作为基准公司
|
||||
if (i == 0) {
|
||||
standardCompanyId = payPackCompany.getCompanyId();
|
||||
}
|
||||
if (!standardCompanyId.equals(payPackCompany.getCompanyId())) {
|
||||
return "打包开票只能是同一个企业";
|
||||
}
|
||||
oldInvoiceAmount = payPackCompany.getInvoiceAmount();
|
||||
if(oldInvoiceAmount == null){
|
||||
oldInvoiceAmount= new BigDecimal("0");
|
||||
}
|
||||
//之前开票总额+本次开票金额
|
||||
invoiceAmount = oldInvoiceAmount.add(bmpList.get(i).getInvoiceAmount()).setScale(2, BigDecimal.ROUND_HALF_UP);
|
||||
//开票总额>应收
|
||||
if(invoiceAmount.compareTo(payPackCompany.getReceivableAmount()) == 1){
|
||||
return "开票金额大于当前未开票金额,输入有误!";
|
||||
}
|
||||
PayCompanyManagementTemporary payPackCompanyManagement = payCompanyManagementTemporaryService.getById(payPackCompany.getCompanyTemporaryId());
|
||||
if(!Objects.isNull(payPackCompanyManagement) && "2".equals(payPackCompanyManagement.getStatus()) ){
|
||||
return "企业未审核,需要审核后开票";
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
|
||||
+17
@@ -16,6 +16,8 @@ import com.jero.member.entity.TbMemberProjectSubitem;
|
||||
import com.jero.member.mapper.PayMemberProjectSubitemMapper;
|
||||
import com.jero.member.mapper.TbCertificatePaymentMapper;
|
||||
import com.jero.member.mapper.TbMemberProjectSubitemMapper;
|
||||
import com.jero.pack.entity.PayPackCompany;
|
||||
import com.jero.pack.service.IPayPackCompanyService;
|
||||
import com.jero.payment.entity.PayConfirmPaymentRecord;
|
||||
import com.jero.payment.mapper.PayConfirmPaymentRecordMapper;
|
||||
import com.jero.payment.mapper.PayPaymentRecordMapper;
|
||||
@@ -59,6 +61,8 @@ public class PayConfirmPaymentRecordService extends ServiceImpl<PayConfirmPaymen
|
||||
private IPayPaymentRecordService payPaymentRecordService;
|
||||
@Resource
|
||||
private PayPaymentRecordMapper payPaymentRecordMapper;
|
||||
@Resource
|
||||
private IPayPackCompanyService payPackCompanyService;
|
||||
|
||||
|
||||
public void add(PayConfirmPaymentRecord payConfirmPaymentRecord) {
|
||||
@@ -177,6 +181,19 @@ public class PayConfirmPaymentRecordService extends ServiceImpl<PayConfirmPaymen
|
||||
throw new JeroBootException("确收金额不能大于待确收金额");
|
||||
}
|
||||
break;
|
||||
// 打包项目
|
||||
case PayIncomeContractCommon.PROJECT_TYPE7:
|
||||
PayPackCompany payPackCompany = payPackCompanyService.getById(projectId);
|
||||
if (payPackCompany == null) {
|
||||
throw new JeroBootException("项目不存在");
|
||||
}
|
||||
// 获取待确收金额
|
||||
receivableAmount = payPackCompany.getReceivableAmount();
|
||||
// 如果当前确认金额不能大于当前项目的待确收金额
|
||||
if (confirmAmount.compareTo(receivableAmount.subtract(totalAmount)) > 0) {
|
||||
throw new JeroBootException("确收金额不能大于待确收金额");
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
+19
@@ -40,6 +40,8 @@ import com.jero.member.service.IPayMemberProjectService;
|
||||
import com.jero.member.service.ITbMemberProjectService;
|
||||
import com.jero.modules.system.entity.SysUser;
|
||||
import com.jero.modules.system.service.ISysUserService;
|
||||
import com.jero.pack.entity.PayPackCompany;
|
||||
import com.jero.pack.service.IPayPackCompanyService;
|
||||
import com.jero.payment.entity.PayPaymentRecord;
|
||||
import com.jero.payment.entity.PayPaymentRecordSub;
|
||||
import com.jero.payment.mapper.PayPaymentCheckMapper;
|
||||
@@ -132,6 +134,8 @@ public class PayPaymentRecordServiceImpl extends ServiceImpl<PayPaymentRecordMap
|
||||
private IPayCompanyManagementService payCompanyManagementService;
|
||||
@Resource
|
||||
private IPayWorkingGroupSubItemContactsService payWorkingGroupSubItemContactsService;
|
||||
@Resource
|
||||
private IPayPackCompanyService payPackCompanyService;
|
||||
|
||||
@Value("${jero.path.upload}")
|
||||
private String upLoadPath;
|
||||
@@ -558,6 +562,21 @@ public class PayPaymentRecordServiceImpl extends ServiceImpl<PayPaymentRecordMap
|
||||
//// tbCheckCerVo.setCheckMark(payPaymentRecord.getRemark());
|
||||
// typr6List.add(tbCheckCerVo);
|
||||
|
||||
break;
|
||||
// 打包项目
|
||||
case PayIncomeContractCommon.PROJECT_TYPE7:
|
||||
|
||||
PayPackCompany payPackCompany = payPackCompanyService.getById(payPaymentRecord.getProjectId());
|
||||
newPaidAmount = addPaidAmount(payPackCompany.getPaidAmount(),payPaymentRecord.getAmountReceived());//累加实收
|
||||
inAccount = getInAccount(payPackCompany.getReceivableAmount(), newPaidAmount);//到账状态
|
||||
tax = addPaidAmount(payPackCompany.getPaidTax(),payPaymentRecord.getTax());
|
||||
noTaxAmount = addPaidAmount(payPackCompany.getPaidNoTaxAmount(),payPaymentRecord.getNoTaxAmount());
|
||||
payPackCompany.setPaidTax(tax);
|
||||
payPackCompany.setPaidNoTaxAmount(noTaxAmount);
|
||||
//更新主列表
|
||||
payPackCompany.setPaidAmount(newPaidAmount);
|
||||
payPackCompany.setInAccount(inAccount);
|
||||
payPackCompanyService.updateById(payPackCompany);
|
||||
break;
|
||||
default:break;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user