通用项目详情完善

This commit is contained in:
梁琦涛
2021-09-14 18:10:28 +08:00
parent 3a30d4ea19
commit fdbe831751
7 changed files with 66 additions and 17 deletions
@@ -4,7 +4,7 @@
<select id="queryProject" resultType="com.jero.project.entity.PayCommonProject">
<!-- 普通项目-->
select c.id,c.charge_project, c.charge_use, c.principal_id,c.principal_name,c.contacts_temporary_id,c.contacts_temporary_name,c.charge_company_temporary_name,c.receivable_amount,c.paid_amount,c.need_invoice,c.pack,c.in_account,c.make_invoice,c.mail,c.create_time,1 as projectType,'' as phone,'' as email,c.remarks,c.contract_num,c.charge_company_temporary_id
select c.id,c.charge_project, c.charge_use, c.principal_id,c.principal_name,c.contacts_temporary_id,c.contacts_temporary_name,c.charge_company_temporary_name,c.receivable_amount,c.paid_amount,c.need_invoice,c.pack,c.in_account,c.make_invoice,c.mail,c.create_time,1 as projectType,'' as phone,'' as email,c.remarks,c.contract_num,c.charge_company_temporary_id,c.charge_way
from pay_common_project c
<where>
<if test="projectId != null and projectId != ''">
@@ -13,7 +13,7 @@
</where>
<!--工作组项目-->
UNION ALL
select gsub.id,g.working_group_project, gsub.charge_use, g.principal_id_a,g.principal_name_a,gsub.contacts_temporary_id_one,gsub.contacts_temporary_name_one,gsub.charge_company_temporary_name,gsub.receivable_amount,gsub.paid_amount,gsub.need_invoice,gsub.pack,gsub.in_account,gsub.make_invoice,gsub.mail,gsub.create_time,2,'','',gsub.remarks,gsub.contract_num,gsub.charge_company_temporary_id
select gsub.id,g.working_group_project, gsub.charge_use, g.principal_id_a,g.principal_name_a,gsub.contacts_temporary_id_one,gsub.contacts_temporary_name_one,gsub.charge_company_temporary_name,gsub.receivable_amount,gsub.paid_amount,gsub.need_invoice,gsub.pack,gsub.in_account,gsub.make_invoice,gsub.mail,gsub.create_time,2,'','',gsub.remarks,gsub.contract_num,gsub.charge_company_temporary_id,gsub.charge_way
from pay_working_group g
inner join pay_working_group_subitem gsub on g.id = gsub.charge_company_id
<where>
@@ -23,7 +23,7 @@
</where>
<!-- 会议项目-->
UNION ALL
select sit.id,meeting.meeting_name,sit.charge_use, meeting.director_id, meeting.director_name,sit.company_contact_temporary_id,sit.company_contact_name,sit.company_name,sit.amount_receivable,sit.paid_amount,sit.need_invoice,sit.pack,sit.in_account,sit.make_invoice,sit.mail,sit.create_time,3,'','',sit.remark,'',sit.company_temporary_id
select sit.id,meeting.meeting_name,sit.charge_use, meeting.director_id, meeting.director_name,sit.company_contact_temporary_id,sit.company_contact_name,sit.company_name,sit.amount_receivable,sit.paid_amount,sit.need_invoice,sit.pack,sit.in_account,sit.make_invoice,sit.mail,sit.create_time,3,'','',sit.remark,'',sit.company_temporary_id,sit.pay_mode
from pay_meeting meeting
inner join pay_meeting_situation sit on meeting.id = sit.meeting_id
<where>
@@ -33,7 +33,7 @@
</where>
<!-- 会员项目-->
UNION ALL
select msub.id,pmp.project_name,msub.charge_use,pmp.director_id,pmp.director_name,msub.company_contact_temporary_id,msub.company_contact_name,msub.company_name,msub.amount_receivable,msub.paid_amount,msub.need_invoice,msub.pack,msub.in_account,msub.make_invoice,msub.mail,msub.create_time,4,'','',msub.remark,msub.contract_no,msub.company_temporary_id
select msub.id,pmp.project_name,msub.charge_use,pmp.director_id,pmp.director_name,msub.company_contact_temporary_id,msub.company_contact_name,msub.company_name,msub.amount_receivable,msub.paid_amount,msub.need_invoice,msub.pack,msub.in_account,msub.make_invoice,msub.mail,msub.create_time,4,'','',msub.remark,msub.contract_no,msub.company_temporary_id,msub.payment_method
from pay_member_project pmp
inner join pay_member_project_subitem msub on pmp.id = msub.project_id
<where>
@@ -43,7 +43,7 @@
</where>
<!-- 标协会员项目-->
UNION ALL
select tmsub.id,tmember.project_name,tmsub.charge_use,'','','',tmsub.liaison_man,tmsub.company_name,tmsub.amount_receivable,tmsub.paid_amount,tmsub.invoice_requirements,tmsub.pack,tmsub.in_account,tmsub.make_invoice,tmsub.mail,tmsub.create_time,5,tmsub.mobile,tmsub.email,'','',tmsub.company_id
select tmsub.id,tmember.project_name,tmsub.charge_use,'','','',tmsub.liaison_man,tmsub.company_name,tmsub.amount_receivable,tmsub.paid_amount,tmsub.invoice_requirements,tmsub.pack,tmsub.in_account,tmsub.make_invoice,tmsub.mail,tmsub.create_time,5,tmsub.mobile,tmsub.email,'','',tmsub.company_id,tmsub.payment_method
from tb_member_project tmember
inner join tb_member_project_subitem tmsub on tmember.id=tmsub.project_id
<where>
@@ -12,6 +12,10 @@ import com.jero.company.entity.PayCompanyManagement;
import com.jero.company.entity.PayContactsManagement;
import com.jero.company.service.IPayCompanyManagementService;
import com.jero.company.service.IPayContactsManagementService;
import com.jero.contract.entity.PayIncomeContract;
import com.jero.contract.entity.PayIncomeContractAssociated;
import com.jero.contract.service.IPayIncomeContractAssociatedService;
import com.jero.contract.service.IPayIncomeContractService;
import com.jero.mail.entity.PayMailBill;
import com.jero.mail.service.IPayMailBillService;
import com.jero.payment.entity.PayPaymentRecord;
@@ -49,6 +53,10 @@ public class ProjectDetailServiceImpl implements ProjectDetailService {
private ProjectDetailMapper projectDetailMapper;
@Autowired
private ISysBaseAPI sysBaseAPI;
@Autowired
private IPayIncomeContractService payIncomeContractService;
@Autowired
private IPayIncomeContractAssociatedService payIncomeContractAssociatedService;
@Override
public ProjectDetailVO getProjectDetail(String projectId) {
@@ -64,11 +72,42 @@ public class ProjectDetailServiceImpl implements ProjectDetailService {
projectDetailVO.setPrincipalName(payCommonProject.getPrincipalName());
projectDetailVO.setReceivableAmount(payCommonProject.getReceivableAmount());
projectDetailVO.setRemarks(payCommonProject.getRemarks());
projectDetailVO.setProjectType(payCommonProject.getProjectType());
projectDetailVO.setChargeWay(payCommonProject.getChargeWay());
if(!Objects.isNull(payCommonProject.getChargeWay())){
projectDetailVO.setChargeWay_dictText(sysBaseAPI.translateDict("payment_charge_use",String.valueOf(payCommonProject.getChargeWay())));
// 普通项目,工作组,会员
if(Objects.equals(String.valueOf(payCommonProject.getProjectType()),ProjectCommon.PROJECT_TYPE1)
|| Objects.equals(String.valueOf(payCommonProject.getProjectType()),ProjectCommon.PROJECT_TYPE2)
|| Objects.equals(String.valueOf(payCommonProject.getProjectType()),ProjectCommon.PROJECT_TYPE4)){
projectDetailVO.setChargeWay_dictText(sysBaseAPI.translateDict("payment_type",String.valueOf(payCommonProject.getChargeWay())));
}
// 会议
if(Objects.equals(String.valueOf(payCommonProject.getProjectType()),ProjectCommon.PROJECT_TYPE3)){
projectDetailVO.setChargeWay_dictText(sysBaseAPI.translateDict("meeting_pay_type",String.valueOf(payCommonProject.getChargeWay())));
}
// 标协会员
if(Objects.equals(String.valueOf(payCommonProject.getProjectType()),ProjectCommon.PROJECT_TYPE5)){
projectDetailVO.setChargeWay_dictText(sysBaseAPI.translateDict("standards_payment_method",String.valueOf(payCommonProject.getChargeWay())));
}
}
projectDetailVO.setContractNum(payCommonProject.getContractNum());
// 合同编号查找合同id
if(!StringUtils.isBlank(payCommonProject.getContractNum())){
LambdaQueryWrapper<PayIncomeContract> query = new LambdaQueryWrapper<>();
query.eq(PayIncomeContract::getContractName,payCommonProject.getContractNum());
List<PayIncomeContract> list = payIncomeContractService.list(query);
if(!CollectionUtils.isEmpty(list)){
// 查看是否有关联
LambdaQueryWrapper<PayIncomeContractAssociated> queryPayIncomeContractAssociated = new LambdaQueryWrapper<>();
queryPayIncomeContractAssociated.eq(PayIncomeContractAssociated::getContractId,list.get(0).getId());
queryPayIncomeContractAssociated.eq(PayIncomeContractAssociated::getProjectId,projectId);
List<PayIncomeContractAssociated> listPayIncomeContractAssociated = payIncomeContractAssociatedService.list(queryPayIncomeContractAssociated);
if(!CollectionUtils.isEmpty(listPayIncomeContractAssociated)){
projectDetailVO.setContractId(list.get(0).getId());
}
}
}
projectDetailVO.setNeedInvoice(payCommonProject.getNeedInvoice());
if(!Objects.isNull(payCommonProject.getNeedInvoice())){
projectDetailVO.setNeedInvoice_dictText(sysBaseAPI.translateDict("invoice_type",String.valueOf(payCommonProject.getNeedInvoice())));
@@ -16,6 +16,11 @@ public class ProjectDetailVO implements Serializable {
*/
@ApiModelProperty(value = "项目负责人")
private String principalName;
/**
* 项目类型
*/
@ApiModelProperty(value = "项目类型")
private Integer projectType;
/**
* 应收金额
*/
@@ -42,6 +47,11 @@ public class ProjectDetailVO implements Serializable {
*/
@ApiModelProperty(value = "合同编号")
private String contractNum;
/**
* 合同id
*/
@ApiModelProperty(value = "合同id")
private String contractId;
/**
* 是否需要发票
*/