diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/common/mapper/xml/ProjectDetailMapper.xml b/jero-boot-incoming-payment/src/main/java/com/jero/common/mapper/xml/ProjectDetailMapper.xml
index 385f6e80..67261834 100644
--- a/jero-boot-incoming-payment/src/main/java/com/jero/common/mapper/xml/ProjectDetailMapper.xml
+++ b/jero-boot-incoming-payment/src/main/java/com/jero/common/mapper/xml/ProjectDetailMapper.xml
@@ -136,7 +136,7 @@
UNION ALL
SELECT
- g.id,
+ pfsc.id,
g.project_name,
'',
g.principal_id,
@@ -157,7 +157,7 @@
'',
g.remarks,
'',
- '',
+ pfsc.company_id,
'',
'',
'',
@@ -171,11 +171,11 @@
''
FROM
pay_functional_safety_center g
- LEFT JOIN
- sys_user su ON g.principal_id = su.id
+ LEFT JOIN sys_user su ON g.principal_id = su.id
+ LEFT JOIN pay_functional_safety_center_subitem pfsc ON g.id = pfsc.project_id
- AND g.id = #{projectId}
+ AND pfsc.id = #{projectId}
diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/common/service/impl/ProjectDetailServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/common/service/impl/ProjectDetailServiceImpl.java
index 6cb9e1ae..8150e773 100644
--- a/jero-boot-incoming-payment/src/main/java/com/jero/common/service/impl/ProjectDetailServiceImpl.java
+++ b/jero-boot-incoming-payment/src/main/java/com/jero/common/service/impl/ProjectDetailServiceImpl.java
@@ -25,6 +25,8 @@ import com.jero.drafting.entity.PayDraftingGroupSubItem;
import com.jero.drafting.entity.PayDraftingGroupSubItemContacts;
import com.jero.drafting.service.IPayDraftingGroupSubItemContactsService;
import com.jero.drafting.service.IPayDraftingGroupSubItemService;
+import com.jero.functionalsafetycenter.entity.SafetyCenterSubitemContacts;
+import com.jero.functionalsafetycenter.service.SafetyCenterSubitemContactsService;
import com.jero.mail.entity.PayMailBill;
import com.jero.mail.entity.PayMailBillProject;
import com.jero.mail.service.IPayMailBillProjectService;
@@ -55,6 +57,7 @@ import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.math.BigDecimal;
+import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
@@ -98,6 +101,8 @@ public class ProjectDetailServiceImpl implements ProjectDetailService {
private IPayDraftingGroupSubItemContactsService payDraftingGroupSubItemContactsService;
@Resource
private ITbMemberProjectSubitemService tbMemberProjectSubitemService;
+ @Resource
+ private SafetyCenterSubitemContactsService safetyCenterSubitemContactsService;
@Override
public ProjectDetailVO getProjectDetail(String projectId) {
@@ -216,9 +221,10 @@ public class ProjectDetailServiceImpl implements ProjectDetailService {
if(!Objects.isNull(payCommonProject.getPack())){
projectDetailVO.setPack_dictText(sysBaseAPI.translateDict("yn",String.valueOf(payCommonProject.getPack())));
}
- // 标协会员和会议,直接查询企业,联系人
+ // 标协会员和会议,直接查询企业,联系人 加功能安全中心
if(Objects.equals(String.valueOf(payCommonProject.getProjectType()), ProjectCommon.PROJECT_TYPE5)
- || Objects.equals(String.valueOf(payCommonProject.getProjectType()), ProjectCommon.PROJECT_TYPE3)){
+ || Objects.equals(String.valueOf(payCommonProject.getProjectType()), ProjectCommon.PROJECT_TYPE3)
+ || Objects.equals(String.valueOf(payCommonProject.getProjectType()), ProjectCommon.PROJECT_TYPE9)){
PayCompanyManagement payCompanyManagement = payCompanyManagementService.getById(payCommonProject.getChargeCompanyTemporaryId());
if(Objects.isNull(payCompanyManagement)){
throw new JeroBootException("企业不存在!");
@@ -236,25 +242,50 @@ public class ProjectDetailServiceImpl implements ProjectDetailService {
projectDetailVO.setPostalCodeCompany(payCompanyManagement.getPostalCode());
projectDetailVO.setCompanyAddress(payCompanyManagement.getCompanyAddress());
projectDetailVO.setLinkBankNumber(payCompanyManagement.getLinkBankNumber());
- PayContactsManagement payContactsManagement = payContactsManagementService.getById(payCommonProject.getContactsTemporaryId());
- if(Objects.isNull(payContactsManagement)){
- throw new JeroBootException("联系人不存在!");
+ //功能安全中心添加企业联系人
+ if (Objects.equals(String.valueOf(payCommonProject.getProjectType()), ProjectCommon.PROJECT_TYPE9)){
+ List subitemContacts = safetyCenterSubitemContactsService.listBySubitemId(projectId);
+ List listPayWorkingGroupSubItemContacts = new ArrayList<>();
+ for (SafetyCenterSubitemContacts subitemContact : subitemContacts) {
+ PayContactsManagement contactsManagement = payContactsManagementService.getById(subitemContact.getContactsId());
+ PayWorkingGroupSubItemContacts p = new PayWorkingGroupSubItemContacts();
+ p.setContactsTemporaryName(contactsManagement.getName());
+ p.setGender(contactsManagement.getGender());
+ if(!Objects.isNull(contactsManagement.getGender())){
+ p.setGender_dictText(sysBaseAPI.translateDict("sex",String.valueOf(contactsManagement.getGender())));
+ }
+ p.setPost(contactsManagement.getPost());
+ if(!StringUtils.isBlank(contactsManagement.getPhone())){
+ p.setPhone(PasswordUtil.decrypt(contactsManagement.getPhone()));
+ }
+ if(!StringUtils.isBlank(contactsManagement.getEmail())){
+ p.setEmail(PasswordUtil.decrypt(contactsManagement.getEmail()));
+ }
+ p.setPostalCodeContacts(contactsManagement.getPostalCode());
+ p.setContactAddress(contactsManagement.getContactAddress());
+ listPayWorkingGroupSubItemContacts.add(p);
+ }
+ projectDetailVO.setPayWorkingGroupSubItemContactsList(listPayWorkingGroupSubItemContacts);
+ }else {
+ PayContactsManagement payContactsManagement = payContactsManagementService.getById(payCommonProject.getContactsTemporaryId());
+ if(Objects.isNull(payContactsManagement)){
+ throw new JeroBootException("联系人不存在!");
+ }
+ projectDetailVO.setName(payContactsManagement.getName());
+ projectDetailVO.setGender(payContactsManagement.getGender());
+ if(!Objects.isNull(payContactsManagement.getGender())){
+ projectDetailVO.setGender_dictText(sysBaseAPI.translateDict("sex",String.valueOf(payContactsManagement.getGender())));
+ }
+ projectDetailVO.setPost(payContactsManagement.getPost());
+ if(!StringUtils.isBlank(payContactsManagement.getPhone())){
+ projectDetailVO.setPhone(PasswordUtil.decrypt(payContactsManagement.getPhone()));
+ }
+ if(!StringUtils.isBlank(payContactsManagement.getEmail())){
+ projectDetailVO.setEmail(PasswordUtil.decrypt(payContactsManagement.getEmail()));
+ }
+ projectDetailVO.setPostalCodeContacts(payContactsManagement.getPostalCode());
+ projectDetailVO.setContactAddress(payContactsManagement.getContactAddress());
}
- projectDetailVO.setName(payContactsManagement.getName());
- projectDetailVO.setGender(payContactsManagement.getGender());
- if(!Objects.isNull(payContactsManagement.getGender())){
- projectDetailVO.setGender_dictText(sysBaseAPI.translateDict("sex",String.valueOf(payContactsManagement.getGender())));
- }
- projectDetailVO.setPost(payContactsManagement.getPost());
- if(!StringUtils.isBlank(payContactsManagement.getPhone())){
- projectDetailVO.setPhone(PasswordUtil.decrypt(payContactsManagement.getPhone()));
- }
- if(!StringUtils.isBlank(payContactsManagement.getEmail())){
- projectDetailVO.setEmail(PasswordUtil.decrypt(payContactsManagement.getEmail()));
- }
- projectDetailVO.setPostalCodeContacts(payContactsManagement.getPostalCode());
- projectDetailVO.setContactAddress(payContactsManagement.getContactAddress());
-
}else{
PayCompanyManagementTemporary payCompanyManagementTemporary = payCompanyManagementTemporaryService.getById(payCommonProject.getChargeCompanyTemporaryId());
if(Objects.isNull(payCompanyManagementTemporary)){