diff --git a/db/24年6月变更.sql b/db/24年6月变更.sql index a9a5c297..60befdd1 100644 --- a/db/24年6月变更.sql +++ b/db/24年6月变更.sql @@ -225,4 +225,28 @@ alter table tb_member_project_subitem add post_contact_temporary_id varchar(150) null comment '邮寄联系人临时id' after post_contact_id; # 标协会员项目增加临时id alter table pay_pack_company - add mail_contact_temporary_id varchar(150) null comment '邮寄联系人临时id' after mail_contacts_id; \ No newline at end of file + add mail_contact_temporary_id varchar(150) null comment '邮寄联系人临时id' after mail_contacts_id; + +-- 20240807 工作组成员单位 审核凭证修改成查看凭证 +UPDATE sys_permission SET parent_id='1431167539278086146', name='查看凭证' WHERE id='1808440661174550530'; +-- 20240807 会议 查看凭证 按钮 +INSERT INTO `sys_permission`(`id`, `parent_id`, `name`, `url`, `component`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_route`, `is_leaf`, `keep_alive`, `hidden`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`, `external_terminal_show`) VALUES ('1821076019175383042', '1443460205023940610', '查看凭证', NULL, NULL, NULL, NULL, 2, 'otherMeetingSituation:lookVoucher', '1', 1.00, 0, NULL, 1, 1, 0, 0, NULL, 'LKGLZ', '2024-08-07 14:48:52', NULL, NULL, 0, 0, '1', 0, 1); +INSERT INTO `sys_permission`(`id`, `parent_id`, `name`, `url`, `component`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_route`, `is_leaf`, `keep_alive`, `hidden`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`, `external_terminal_show`) VALUES ('1821076182862290946', '1443461591480487938', '查看凭证', NULL, NULL, NULL, NULL, 2, 'committeeMeetingSituation:lookVoucher', '1', 1.00, 0, NULL, 1, 1, 0, 0, NULL, 'LKGLZ', '2024-08-07 14:49:31', NULL, NULL, 0, 0, '1', 0, 1); +INSERT INTO `sys_permission`(`id`, `parent_id`, `name`, `url`, `component`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_route`, `is_leaf`, `keep_alive`, `hidden`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`, `external_terminal_show`) VALUES ('1821076336449314817', '1433322232030777345', '查看凭证', NULL, NULL, NULL, NULL, 2, 'internalMeetingSituation:lookVoucher', '1', 1.00, 0, NULL, 1, 1, 0, 0, NULL, 'LKGLZ', '2024-08-07 14:50:07', NULL, NULL, 0, 0, '1', 0, 1); +INSERT INTO `sys_permission`(`id`, `parent_id`, `name`, `url`, `component`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_route`, `is_leaf`, `keep_alive`, `hidden`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`, `external_terminal_show`) VALUES ('1821076500849254402', '1470954992463327234', '查看凭证', NULL, NULL, NULL, NULL, 2, 'councilMeetingSituation:lookVoucher', '1', 1.00, 0, NULL, 1, 1, 0, 0, NULL, 'LKGLZ', '2024-08-07 14:50:46', NULL, NULL, 0, 0, '1', 0, 1); +INSERT INTO `sys_permission`(`id`, `parent_id`, `name`, `url`, `component`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_route`, `is_leaf`, `keep_alive`, `hidden`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`, `external_terminal_show`) VALUES ('1821077226275102721', '1443470901166039042', '查看凭证', NULL, NULL, NULL, NULL, 2, 'standardsMeetingSituation:lookVoucher', '1', 1.00, 0, NULL, 1, 1, 0, 0, NULL, 'LKGLZ', '2024-08-07 14:53:39', NULL, NULL, 0, 0, '1', 0, 1); +INSERT INTO `sys_permission`(`id`, `parent_id`, `name`, `url`, `component`, `component_name`, `redirect`, `menu_type`, `perms`, `perms_type`, `sort_no`, `always_show`, `icon`, `is_route`, `is_leaf`, `keep_alive`, `hidden`, `description`, `create_by`, `create_time`, `update_by`, `update_time`, `del_flag`, `rule_flag`, `status`, `internal_or_external`, `external_terminal_show`) VALUES ('1821829573108494337', '1443462660843458561', '查看凭证', NULL, NULL, NULL, NULL, 2, 'workGroupMeetingSituation:lookVoucher', '1', 1.00, 0, NULL, 1, 1, 0, 0, NULL, 'LKGLZ', '2024-08-09 16:43:13', NULL, NULL, 0, 0, '1', 0, 1); + +-- 20240807 会议酒店推荐调整菜单层级 增加菜单。会议汇总 修改成 会议信息统计 +DELETE FROM sys_permission where id = '1812785413516914690'; +UPDATE sys_permission SET menu_type = 0 , parent_id = NULL, sort_no = 4.2, icon = 'fund',hidden = 0 WHERE id = '1808757213186904065'; +UPDATE sys_permission SET `name`= '会议信息统计', menu_type = 1 , parent_id = '1437320526513905666', icon = NULL, sort_no = 14.00 WHERE id = '1626061755230580738'; +-- 20240807 功能安全中心菜单中增加 汽车2字 +UPDATE sys_permission SET `name`= '汽车功能安全中心' WHERE id = '1802631077112610817'; +UPDATE sys_permission SET `name`= '汽车功能安全中心成员维护' WHERE id = '1802967227660554241'; +UPDATE sys_permission SET `name`= '汽车功能安全中心参会情况' WHERE id = '1802969401866113025'; +UPDATE sys_permission SET `name`= '汽车功能安全中心会议维护' WHERE id = '1802970571397451777'; +UPDATE sys_permission SET `name`= '汽车功能安全中心会议' WHERE id = '1808094888670056450'; + +-- 处理标协会员未缴费历史数据 +update tb_member_project_subitem set member_status = 3 where member_status != 3 and payment_status = 'completed'; diff --git a/jero-boot-base/jero-boot-base-core/src/main/java/com/jero/common/constant/CommonConstant.java b/jero-boot-base/jero-boot-base-core/src/main/java/com/jero/common/constant/CommonConstant.java index 9770c289..83d43329 100644 --- a/jero-boot-base/jero-boot-base-core/src/main/java/com/jero/common/constant/CommonConstant.java +++ b/jero-boot-base/jero-boot-base-core/src/main/java/com/jero/common/constant/CommonConstant.java @@ -311,4 +311,7 @@ public interface CommonConstant { public final static String THIRD_LOGIN_CODE = "third_login_code"; public final static String ZERO = "0.00"; + + Integer YES = 1; + Integer NO = 0; } 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 e8c81344..9205abed 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 @@ -38,6 +38,7 @@ c.tax_rate as tax_rate, c.tax as tax, c.no_tax_amount as no_tax_amount, + c.confirm_amount as confirm_amount, c.affirm_income as affirm_income from pay_common_project c left join sys_user su on c.principal_id = su.id @@ -82,6 +83,7 @@ c.tax_rate as tax_rate, c.tax as tax, c.no_tax_amount as no_tax_amount, + c.confirm_amount as confirm_amount, affirm_income from pay_working_group g left join sys_user su on g.principal_id_a = su.id @@ -127,6 +129,7 @@ c.tax_rate as tax_rate, c.tax as tax, c.no_tax_amount as no_tax_amount, + c.confirm_amount as confirm_amount, affirm_income from pay_meeting meeting left join sys_user su on meeting.director_id = su.id @@ -172,6 +175,7 @@ c.tax_rate as tax_rate, c.tax as tax, c.no_tax_amount as no_tax_amount, + c.confirm_amount as confirm_amount, affirm_income from pay_member_project pmp left join sys_user su on pmp.director_id = su.id @@ -217,6 +221,7 @@ c.tax_rate as tax_rate, c.tax as tax, c.no_tax_amount as no_tax_amount, + c.confirm_amount as confirm_amount, affirm_income from tb_member_project tmember left join sys_user su on tmember.director_id = su.id @@ -264,6 +269,7 @@ c.tax_rate as tax_rate, c.tax as tax, c.no_tax_amount as no_tax_amount, + c.confirm_amount as confirm_amount, affirm_income from tb_member_project tmember left join sys_user su on tmember.director_id = su.id @@ -309,6 +315,7 @@ '' as tax_rate, '' as tax, '' as no_tax_amount, + '' as confirm_amount, '' FROM pay_drafting_group g @@ -357,6 +364,7 @@ c.tax_rate as tax_rate, c.tax as tax, c.no_tax_amount as no_tax_amount, + c.confirm_amount as confirm_amount, c.income_affirm AS affirm_income from pay_pack_company c left join sys_user su on c.pack_principal_id = su.id @@ -402,6 +410,7 @@ '' as tax_rate, '' as tax, '' as no_tax_amount, + '' as confirm_amount, '' FROM pay_functional_safety_center c 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 3dac76e0..4b25a881 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 @@ -37,6 +37,7 @@ import com.jero.modules.system.entity.SysUser; import com.jero.modules.system.service.ISysUserService; import com.jero.payment.entity.PayPaymentRecord; import com.jero.payment.service.IPayPaymentRecordService; +import com.jero.payment.service.impl.PayConfirmPaymentRecordService; import com.jero.project.common.PayProjectCommon; import com.jero.project.entity.PayCommonProject; import com.jero.project.entity.PayWorkingGroupDistributionRecord; @@ -103,6 +104,8 @@ public class ProjectDetailServiceImpl implements ProjectDetailService { private ITbMemberProjectSubitemService tbMemberProjectSubitemService; @Resource private SafetyCenterSubitemContactsService safetyCenterSubitemContactsService; + @Resource + private PayConfirmPaymentRecordService confirmPaymentRecordService; @Override public ProjectDetailVO getProjectDetail(String projectId) { @@ -495,7 +498,7 @@ public class ProjectDetailServiceImpl implements ProjectDetailService { projectStatusVO.setMakeInvoice(ProjectCommon.MAKE_INVOICE0); } // 开票金额 > 0 && 开票金额 < 待确收金额 = 2 - if(invoice.compareTo(new BigDecimal("0.00")) > 0 && invoice.compareTo(payCommonProject.getReceivableAmount()) < 0){ + if(invoice.compareTo(new BigDecimal("0.00")) > 0 && invoice.compareTo(receivableAmount) < 0){ projectStatusVO.setMakeInvoice(ProjectCommon.MAKE_INVOICE2); } } @@ -512,6 +515,10 @@ public class ProjectDetailServiceImpl implements ProjectDetailService { if(y > 0 && y <= c){ projectStatusVO.setMail(ProjectCommon.MAIL2); } + //确认收入 + BigDecimal confirmAmount = payCommonProject.getConfirmAmount(); + Integer affirmIncome = confirmPaymentRecordService.getAffirmIncome(receivableAmount, confirmAmount); + projectStatusVO.setAffirmIncome(affirmIncome); return projectStatusVO; } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/common/vo/ProjectStatusVO.java b/jero-boot-incoming-payment/src/main/java/com/jero/common/vo/ProjectStatusVO.java index aef080f5..172a4b81 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/common/vo/ProjectStatusVO.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/common/vo/ProjectStatusVO.java @@ -1,5 +1,6 @@ package com.jero.common.vo; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.io.Serializable; @@ -18,4 +19,9 @@ public class ProjectStatusVO implements Serializable { * 邮寄((1:全额(对勾),0:0(X),2:>0 && <总金额(半满标志))) */ private Integer mail; + + /** + * 确认收入((1:全额(对勾),0:0(X),2:>0 && <总金额(半满标志))) + */ + private Integer affirmIncome; } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/drafting/controller/PayDraftingGroupSubItemController.java b/jero-boot-incoming-payment/src/main/java/com/jero/drafting/controller/PayDraftingGroupSubItemController.java index 2577bfab..ef596a62 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/drafting/controller/PayDraftingGroupSubItemController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/drafting/controller/PayDraftingGroupSubItemController.java @@ -431,22 +431,21 @@ public class PayDraftingGroupSubItemController extends JeroController listIds = listPayDraftingGroupSubItemContacts.stream().map(PayDraftingGroupSubItemContacts::getContactsTemporaryId).collect(Collectors.toList()); // 拿到所有联系人信息对应的详情信息 - List listPayContactsManagementTemporary = payContactsManagementTemporaryService.listByIds(listIds); for (int i = 0; i < listPayDraftingGroupSubItemContacts.size(); i++) { - PayDraftingGroupSubItemContacts payDraftingGroupSubItemContacts = listPayDraftingGroupSubItemContacts.get(i); + PayDraftingGroupSubItemContacts contacts = listPayDraftingGroupSubItemContacts.get(i); // 拿到该联系人的详情信息 - List temporary = listPayContactsManagementTemporary.stream().filter(s->Objects.equals(s.getId(),payDraftingGroupSubItemContacts.getContactsTemporaryId())).collect(Collectors.toList()); + PayContactsManagementTemporary temporary = payContactsManagementTemporaryService.getByAllTable(contacts.getContactsId(), contacts.getContactsTemporaryId()); String email = ""; String phone = ""; - String name = payDraftingGroupSubItemContacts.getContactsTemporaryName(); - String remark = payDraftingGroupSubItemContacts.getRemarks(); - if(!CollectionUtils.isEmpty(temporary)){ - email = temporary.get(0).getEmail(); + String name = contacts.getContactsTemporaryName(); + String remark = contacts.getRemarks(); + if(temporary != null){ + email = temporary.getEmail(); // 解密 if (StringUtils.isNotBlank(email)){ email = PasswordUtil.decrypt(email); } - phone = temporary.get(0).getPhone(); + phone = temporary.getPhone(); if (StringUtils.isNotBlank(phone)){ phone = PasswordUtil.decrypt(phone); } @@ -512,6 +511,57 @@ public class PayDraftingGroupSubItemController extends JeroController listContactsName11 = list.stream().map(PayDraftingGroupSubItem::getContactsName11).collect(Collectors.toList()); + if(!CollectionUtils.isEmpty(listContactsName11)){ + listContactsName.addAll(listContactsName11); + } + // 获取excel中联系人12名称 + List listContactsName12 = list.stream().map(PayDraftingGroupSubItem::getContactsName12).collect(Collectors.toList()); + if(!CollectionUtils.isEmpty(listContactsName12)){ + listContactsName.addAll(listContactsName12); + } + // 获取excel中联系人13名称 + List listContactsName13 = list.stream().map(PayDraftingGroupSubItem::getContactsName13).collect(Collectors.toList()); + if(!CollectionUtils.isEmpty(listContactsName13)){ + listContactsName.addAll(listContactsName13); + } + // 获取excel中联系人14名称 + List listContactsName14 = list.stream().map(PayDraftingGroupSubItem::getContactsName14).collect(Collectors.toList()); + if(!CollectionUtils.isEmpty(listContactsName14)){ + listContactsName.addAll(listContactsName14); + } + // 获取excel中联系人15名称 + List listContactsName15 = list.stream().map(PayDraftingGroupSubItem::getContactsName15).collect(Collectors.toList()); + if(!CollectionUtils.isEmpty(listContactsName15)){ + listContactsName.addAll(listContactsName15); + } + // 获取excel中联系人16名称 + List listContactsName16 = list.stream().map(PayDraftingGroupSubItem::getContactsName16).collect(Collectors.toList()); + if(!CollectionUtils.isEmpty(listContactsName16)){ + listContactsName.addAll(listContactsName16); + } + // 获取excel中联系人17名称 + List listContactsName17 = list.stream().map(PayDraftingGroupSubItem::getContactsName17).collect(Collectors.toList()); + if(!CollectionUtils.isEmpty(listContactsName17)){ + listContactsName.addAll(listContactsName17); + } + // 获取excel中联系人18名称 + List listContactsName18 = list.stream().map(PayDraftingGroupSubItem::getContactsName18).collect(Collectors.toList()); + if(!CollectionUtils.isEmpty(listContactsName18)){ + listContactsName.addAll(listContactsName18); + } + // 获取excel中联系人19名称 + List listContactsName19 = list.stream().map(PayDraftingGroupSubItem::getContactsName19).collect(Collectors.toList()); + if(!CollectionUtils.isEmpty(listContactsName19)){ + listContactsName.addAll(listContactsName19); + } + // 获取excel中联系人20名称 + List listContactsName20 = list.stream().map(PayDraftingGroupSubItem::getContactsName20).collect(Collectors.toList()); + if(!CollectionUtils.isEmpty(listContactsName20)){ + listContactsName.addAll(listContactsName20); + } // 获取excel联系人信息 LambdaQueryWrapper contactsWrapper = new LambdaQueryWrapper<>(); contactsWrapper.in(PayContactsManagement::getName,listContactsName); @@ -686,6 +737,16 @@ public class PayDraftingGroupSubItemServiceImpl extends ServiceImpl list = new ArrayList<>(); + + for (SafetyCenterSubitem subitem : exportList) { + Map map = new HashMap<>(); + map.put("companyId",subitem.getCompanyId()); + map.put("remarks",subitem.getRemarks()); + List contactsList = subitem.getContactsList(); + List contactsIdList = contactsList.stream().map(SafetyCenterSubitemContacts::getContactsId).collect(Collectors.toList()); + List contactsManagementList = contactsManagementService.listByIds(contactsIdList); + Map stringPayContactsManagementMap = CollStreamUtil.toIdentityMap(contactsManagementList, PayContactsManagement::getId); + int i = 1; + for (SafetyCenterSubitemContacts contacts : contactsList) { + String contactsId = contacts.getContactsId(); + PayContactsManagement contactsManagement = stringPayContactsManagementMap.get(contactsId); + map.put("contactsName"+i, contactsManagement.getName()); + map.put("contactsPhone"+i, PasswordUtil.decrypt(contactsManagement.getPhone())); + map.put("contactsEmail"+i, PasswordUtil.decrypt(contactsManagement.getEmail())); + map.put("remarks"+i,contacts.getRemarks()); + i++; + } + CopyOptions copyOptions = new CopyOptions(); + SafetyCenterSubitemExcel safetyCenterSubitemExcel = BeanUtil.mapToBean(map, SafetyCenterSubitemExcel.class, false, copyOptions); + list.add(safetyCenterSubitemExcel); + } + return super.exportListXls(list, SafetyCenterSubitemExcel.class, "功能安全中心成员"); } /** @@ -226,7 +264,7 @@ public class SafetyCenterSubitemController extends JeroController errorMessage = new ArrayList<>(); List companyNameList = new ArrayList<>(); - int errorRowNum = 3; - int errorRowNum2 = 3; + int errorRowNum = 2; for (Object obj : excelData) { errorRowNum += 1; SafetyCenterSubitemImport subitemImport = (SafetyCenterSubitemImport) obj; String companyName = subitemImport.getCompanyName(); - List contactsList = subitemImport.getContactsList(); + Map map = BeanUtil.beanToMap(subitemImport); + List contactsList = new ArrayList<>(); + for (int i = 1; i < 21; i++) { + SafetyCenterSubitemContactsImport contactsImport = new SafetyCenterSubitemContactsImport(); + String s = (String) map.get("contactsName" + i); + if (s == null){ + continue; + } + String s1 = (String) map.get("remarks"+i); + contactsImport.setContacts(s); + contactsImport.setRemarks(s1); + contactsList.add(contactsImport); + } PayCompanyManagement company = null; if (StringUtils.isBlank(companyName)){ @@ -318,12 +332,10 @@ public class SafetyCenterSubitemService extends ServiceImpl parentContactList = contactsService.listBySubitemId(parentCenterSubitemId); parentContactIdList = parentContactList.stream().map(SafetyCenterSubitemContacts::getContactsId).distinct().collect(Collectors.toList()); } - errorRowNum += contactsList.size() -1; - List distinctContactsList = new ArrayList<>(); List subitemContactsList = new ArrayList<>(); for (SafetyCenterSubitemContactsImport contactsImport : contactsList) { - errorRowNum2 += 1; String contacts = contactsImport.getContacts(); if (StringUtils.isBlank(contacts)){ - errorMessage.add("第" + errorRowNum2 + "行:企业联系人不能为空"); + errorMessage.add("第" + errorRowNum + "行:企业联系人不能为空"); continue; } PayContactsManagement payContactsManagement = payContactsManagementService.checkByCompanyIdAndName(contacts, companyId); if (payContactsManagement == null){ - errorMessage.add("第" + errorRowNum2 + "行:企业联系人不存在"); + errorMessage.add("第" + errorRowNum + "行:企业联系人"+contacts+"不存在"); continue; } if (distinctContactsList.contains(contacts)){ - errorMessage.add("第" + errorRowNum2 + "行:企业联系人重复"); + errorMessage.add("第" + errorRowNum + "行:企业联系人"+contacts+"重复"); continue; }else { distinctContactsList.add(contacts); @@ -383,13 +391,13 @@ public class SafetyCenterSubitemService extends ServiceImpl 50){ - errorMessage.add("第" + errorRowNum2 + "行:企业联系人备注最长为50字符"); + errorMessage.add("第" + errorRowNum + "行:企业联系人"+contacts+"备注最长为50字符"); continue; } SafetyCenterSubitemContacts contacts1 = new SafetyCenterSubitemContacts(); diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/functionalsafetycenter/vo/SafetyCenterSubitemExcel.java b/jero-boot-incoming-payment/src/main/java/com/jero/functionalsafetycenter/vo/SafetyCenterSubitemExcel.java new file mode 100644 index 00000000..c3790e81 --- /dev/null +++ b/jero-boot-incoming-payment/src/main/java/com/jero/functionalsafetycenter/vo/SafetyCenterSubitemExcel.java @@ -0,0 +1,441 @@ +package com.jero.functionalsafetycenter.vo; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jero.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import org.jeecgframework.poi.excel.annotation.Excel; +import org.springframework.format.annotation.DateTimeFormat; + +import java.io.Serializable; +import java.math.BigDecimal; + +/** + * @Description: pay_working_group_subitem + * @Author: jeecg-boot + * @Date: 2021-08-27 + * @Version: V1.0 + */ +@Data +public class SafetyCenterSubitemExcel implements Serializable { + private static final long serialVersionUID = 1L; + + /** + * 成员单位id + */ + @TableField(value = "company_id") + @ApiModelProperty(value = "成员单位id") + @Excel(name = "成员单位", width = 15, dictTable = "pay_company_management", dicText = "company_name", dicCode = "id", needMerge = true) + @Dict(dictTable = "pay_company_management", dicText = "company_name", dicCode = "id") + private String companyId; + + /** + * 备注 + */ + @Excel(name = "备注", width = 15) + @ApiModelProperty(value = "备注") + private String remarks; + /** + * 企业联系人名称1 + */ + @Excel(name = "企业联系人1", width = 15) + private String contactsName1; + /** + * 企业联系人手机号1 + */ + @Excel(name = "企业联系人手机号1", width = 17) + private String contactsPhone1; + /** + * 企业联系人邮箱1 + */ + @Excel(name = "企业联系人邮箱1", width = 15) + private String contactsEmail1; + /** + * 联系人备注1 + */ + @Excel(name = "联系人备注1", width = 15) + private String remarks1; + /** + * 企业联系人名称2 + */ + @Excel(name = "企业联系人2", width = 15) + private String contactsName2; + /** + * 企业联系人手机号2 + */ + @Excel(name = "企业联系人手机号2", width = 17) + private String contactsPhone2; + /** + * 企业联系人邮箱2 + */ + @Excel(name = "企业联系人邮箱2", width = 15) + private String contactsEmail2; + /** + * 联系人备注2 + */ + @Excel(name = "联系人备注2", width = 15) + private String remarks2; + /** + * 企业联系人名称3 + */ + @Excel(name = "企业联系人3", width = 15) + private String contactsName3; + /** + * 企业联系人手机号3 + */ + @Excel(name = "企业联系人手机号3", width = 17) + private String contactsPhone3; + /** + * 企业联系人邮箱3 + */ + @Excel(name = "企业联系人邮箱3", width = 15) + private String contactsEmail3; + /** + * 联系人备注3 + */ + @Excel(name = "联系人备注3", width = 15) + private String remarks3; + /** + * 企业联系人名称4 + */ + @Excel(name = "企业联系人4", width = 15) + private String contactsName4; + /** + * 企业联系人手机号4 + */ + @Excel(name = "企业联系人手机号4", width = 17) + private String contactsPhone4; + /** + * 企业联系人邮箱4 + */ + @Excel(name = "企业联系人邮箱4", width = 15) + private String contactsEmail4; + /** + * 联系人备注4 + */ + @Excel(name = "联系人备注4", width = 15) + private String remarks4; + /** + * 企业联系人名称5 + */ + @Excel(name = "企业联系人5", width = 15) + private String contactsName5; + /** + * 企业联系人手机号5 + */ + @Excel(name = "企业联系人手机号5", width = 17) + private String contactsPhone5; + /** + * 企业联系人邮箱5 + */ + @Excel(name = "企业联系人邮箱5", width = 15) + private String contactsEmail5; + /** + * 联系人备注5 + */ + @Excel(name = "联系人备注5", width = 15) + private String remarks5; + /** + * 企业联系人名称6 + */ + @Excel(name = "企业联系人6", width = 15) + private String contactsName6; + /** + * 企业联系人手机号6 + */ + @Excel(name = "企业联系人手机号6", width = 17) + private String contactsPhone6; + /** + * 企业联系人邮箱6 + */ + @Excel(name = "企业联系人邮箱6", width = 15) + private String contactsEmail6; + /** + * 联系人备注6 + */ + @Excel(name = "联系人备注6", width = 15) + private String remarks6; + /** + * 企业联系人名称7 + */ + @Excel(name = "企业联系人7", width = 15) + private String contactsName7; + /** + * 企业联系人手机号7 + */ + @Excel(name = "企业联系人手机号7", width = 17) + private String contactsPhone7; + /** + * 企业联系人邮箱7 + */ + @Excel(name = "企业联系人邮箱7", width = 15) + private String contactsEmail7; + /** + * 联系人备注7 + */ + @Excel(name = "联系人备注7", width = 15) + private String remarks7; + /** + * 企业联系人名称8 + */ + @Excel(name = "企业联系人8", width = 15) + private String contactsName8; + /** + * 企业联系人手机号8 + */ + @Excel(name = "企业联系人手机号8", width = 17) + private String contactsPhone8; + /** + * 企业联系人邮箱8 + */ + @Excel(name = "企业联系人邮箱8", width = 15) + private String contactsEmail8; + /** + * 联系人备注8 + */ + @Excel(name = "联系人备注8", width = 15) + private String remarks8; + /** + * 企业联系人名称9 + */ + @Excel(name = "企业联系人9", width = 15) + private String contactsName9; + /** + * 企业联系人手机号9 + */ + @Excel(name = "企业联系人手机号9", width = 17) + private String contactsPhone9; + /** + * 企业联系人邮箱9 + */ + @Excel(name = "企业联系人邮箱9", width = 15) + private String contactsEmail9; + /** + * 联系人备注9 + */ + @Excel(name = "联系人备注9", width = 15) + private String remarks9; + /** + * 企业联系人名称10 + */ + @Excel(name = "企业联系人10", width = 15) + private String contactsName10; + /** + * 企业联系人手机号10 + */ + @Excel(name = "企业联系人手机号10", width = 17) + private String contactsPhone10; + /** + * 企业联系人邮箱10 + */ + @Excel(name = "企业联系人邮箱10", width = 15) + private String contactsEmail10; + /** + * 联系人备注10 + */ + @Excel(name = "联系人备注10", width = 15) + private String remarks10; + + /** + * 企业联系人名称11 + */ + @Excel(name = "企业联系人11", width = 15) + private String contactsName11; + /** + * 企业联系人手机号11 + */ + @Excel(name = "企业联系人手机号11", width = 17) + private String contactsPhone11; + /** + * 企业联系人邮箱11 + */ + @Excel(name = "企业联系人邮箱11", width = 15) + private String contactsEmail11; + /** + * 联系人备注11 + */ + @Excel(name = "联系人备注11", width = 15) + private String remarks11; + /** + * 企业联系人名称12 + */ + @Excel(name = "企业联系人12", width = 15) + private String contactsName12; + /** + * 企业联系人手机号12 + */ + @Excel(name = "企业联系人手机号12", width = 17) + private String contactsPhone12; + /** + * 企业联系人邮箱12 + */ + @Excel(name = "企业联系人邮箱12", width = 15) + private String contactsEmail12; + /** + * 联系人备注12 + */ + @Excel(name = "联系人备注12", width = 15) + private String remarks12; + /** + * 企业联系人名称13 + */ + @Excel(name = "企业联系人13", width = 15) + private String contactsName13; + /** + * 企业联系人手机号13 + */ + @Excel(name = "企业联系人手机号13", width = 17) + private String contactsPhone13; + /** + * 企业联系人邮箱13 + */ + @Excel(name = "企业联系人邮箱13", width = 15) + private String contactsEmail13; + /** + * 联系人备注13 + */ + @Excel(name = "联系人备注13", width = 15) + private String remarks13; + /** + * 企业联系人名称14 + */ + @Excel(name = "企业联系人14", width = 15) + private String contactsName14; + /** + * 企业联系人手机号14 + */ + @Excel(name = "企业联系人手机号14", width = 17) + private String contactsPhone14; + /** + * 企业联系人邮箱14 + */ + @Excel(name = "企业联系人邮箱14", width = 15) + private String contactsEmail14; + /** + * 联系人备注14 + */ + @Excel(name = "联系人备注14", width = 15) + private String remarks14; + /** + * 企业联系人名称15 + */ + @Excel(name = "企业联系人15", width = 15) + private String contactsName15; + /** + * 企业联系人手机号15 + */ + @Excel(name = "企业联系人手机号15", width = 17) + private String contactsPhone15; + /** + * 企业联系人邮箱15 + */ + @Excel(name = "企业联系人邮箱15", width = 15) + private String contactsEmail15; + /** + * 联系人备注15 + */ + @Excel(name = "联系人备注15", width = 15) + private String remarks15; + /** + * 企业联系人名称16 + */ + @Excel(name = "企业联系人16", width = 15) + private String contactsName16; + /** + * 企业联系人手机号16 + */ + @Excel(name = "企业联系人手机号16", width = 17) + private String contactsPhone16; + /** + * 企业联系人邮箱16 + */ + @Excel(name = "企业联系人邮箱16", width = 15) + private String contactsEmail16; + /** + * 联系人备注16 + */ + @Excel(name = "联系人备注16", width = 15) + private String remarks16; + /** + * 企业联系人名称17 + */ + @Excel(name = "企业联系人17", width = 15) + private String contactsName17; + /** + * 企业联系人手机号17 + */ + @Excel(name = "企业联系人手机号17", width = 17) + private String contactsPhone17; + /** + * 企业联系人邮箱17 + */ + @Excel(name = "企业联系人邮箱17", width = 15) + private String contactsEmail17; + /** + * 联系人备注17 + */ + @Excel(name = "联系人备注17", width = 15) + private String remarks17; + /** + * 企业联系人名称18 + */ + @Excel(name = "企业联系人18", width = 15) + private String contactsName18; + /** + * 企业联系人手机号18 + */ + @Excel(name = "企业联系人手机号18", width = 17) + private String contactsPhone18; + /** + * 企业联系人邮箱18 + */ + @Excel(name = "企业联系人邮箱18", width = 15) + private String contactsEmail18; + /** + * 联系人备注18 + */ + @Excel(name = "联系人备注18", width = 15) + private String remarks18; + /** + * 企业联系人名称19 + */ + @Excel(name = "企业联系人19", width = 15) + private String contactsName19; + /** + * 企业联系人手机号19 + */ + @Excel(name = "企业联系人手机号19", width = 17) + private String contactsPhone19; + /** + * 企业联系人邮箱19 + */ + @Excel(name = "企业联系人邮箱19", width = 15) + private String contactsEmail19; + /** + * 联系人备注19 + */ + @Excel(name = "联系人备注19", width = 15) + private String remarks19; + /** + * 企业联系人名称20 + */ + @Excel(name = "企业联系人20", width = 15) + private String contactsName20; + /** + * 企业联系人手机号20 + */ + @Excel(name = "企业联系人手机号20", width = 17) + private String contactsPhone20; + /** + * 企业联系人邮箱20 + */ + @Excel(name = "企业联系人邮箱20", width = 15) + private String contactsEmail20; + /** + * 联系人备注20 + */ + @Excel(name = "联系人备注20", width = 15) + private String remarks20; + +} diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/functionalsafetycenter/vo/SafetyCenterSubitemImport.java b/jero-boot-incoming-payment/src/main/java/com/jero/functionalsafetycenter/vo/SafetyCenterSubitemImport.java index db9326c8..d557946a 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/functionalsafetycenter/vo/SafetyCenterSubitemImport.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/functionalsafetycenter/vo/SafetyCenterSubitemImport.java @@ -35,8 +35,410 @@ public class SafetyCenterSubitemImport { * 企业联系人列表 */ @ApiModelProperty(value = "企业联系人列表") - @ExcelCollection(name = "企业联系人列表") private List contactsList; + /** + * 企业联系人名称1 + */ + @Excel(name = "企业联系人1", width = 15) + private String contactsName1; + /** + * 企业联系人手机号1 + */ + @Excel(name = "企业联系人手机号1", width = 17) + private String contactsPhone1; + /** + * 企业联系人邮箱1 + */ + @Excel(name = "企业联系人邮箱1", width = 15) + private String contactsEmail1; + /** + * 联系人备注1 + */ + @Excel(name = "联系人备注1", width = 15) + private String remarks1; + /** + * 企业联系人名称2 + */ + @Excel(name = "企业联系人2", width = 15) + private String contactsName2; + /** + * 企业联系人手机号2 + */ + @Excel(name = "企业联系人手机号2", width = 17) + private String contactsPhone2; + /** + * 企业联系人邮箱2 + */ + @Excel(name = "企业联系人邮箱2", width = 15) + private String contactsEmail2; + /** + * 联系人备注2 + */ + @Excel(name = "联系人备注2", width = 15) + private String remarks2; + /** + * 企业联系人名称3 + */ + @Excel(name = "企业联系人3", width = 15) + private String contactsName3; + /** + * 企业联系人手机号3 + */ + @Excel(name = "企业联系人手机号3", width = 17) + private String contactsPhone3; + /** + * 企业联系人邮箱3 + */ + @Excel(name = "企业联系人邮箱3", width = 15) + private String contactsEmail3; + /** + * 联系人备注3 + */ + @Excel(name = "联系人备注3", width = 15) + private String remarks3; + /** + * 企业联系人名称4 + */ + @Excel(name = "企业联系人4", width = 15) + private String contactsName4; + /** + * 企业联系人手机号4 + */ + @Excel(name = "企业联系人手机号4", width = 17) + private String contactsPhone4; + /** + * 企业联系人邮箱4 + */ + @Excel(name = "企业联系人邮箱4", width = 15) + private String contactsEmail4; + /** + * 联系人备注4 + */ + @Excel(name = "联系人备注4", width = 15) + private String remarks4; + /** + * 企业联系人名称5 + */ + @Excel(name = "企业联系人5", width = 15) + private String contactsName5; + /** + * 企业联系人手机号5 + */ + @Excel(name = "企业联系人手机号5", width = 17) + private String contactsPhone5; + /** + * 企业联系人邮箱5 + */ + @Excel(name = "企业联系人邮箱5", width = 15) + private String contactsEmail5; + /** + * 联系人备注5 + */ + @Excel(name = "联系人备注5", width = 15) + private String remarks5; + /** + * 企业联系人名称6 + */ + @Excel(name = "企业联系人6", width = 15) + private String contactsName6; + /** + * 企业联系人手机号6 + */ + @Excel(name = "企业联系人手机号6", width = 17) + private String contactsPhone6; + /** + * 企业联系人邮箱6 + */ + @Excel(name = "企业联系人邮箱6", width = 15) + private String contactsEmail6; + /** + * 联系人备注6 + */ + @Excel(name = "联系人备注6", width = 15) + private String remarks6; + /** + * 企业联系人名称7 + */ + @Excel(name = "企业联系人7", width = 15) + private String contactsName7; + /** + * 企业联系人手机号7 + */ + @Excel(name = "企业联系人手机号7", width = 17) + private String contactsPhone7; + /** + * 企业联系人邮箱7 + */ + @Excel(name = "企业联系人邮箱7", width = 15) + private String contactsEmail7; + /** + * 联系人备注7 + */ + @Excel(name = "联系人备注7", width = 15) + private String remarks7; + /** + * 企业联系人名称8 + */ + @Excel(name = "企业联系人8", width = 15) + private String contactsName8; + /** + * 企业联系人手机号8 + */ + @Excel(name = "企业联系人手机号8", width = 17) + private String contactsPhone8; + /** + * 企业联系人邮箱8 + */ + @Excel(name = "企业联系人邮箱8", width = 15) + private String contactsEmail8; + /** + * 联系人备注8 + */ + @Excel(name = "联系人备注8", width = 15) + private String remarks8; + /** + * 企业联系人名称9 + */ + @Excel(name = "企业联系人9", width = 15) + private String contactsName9; + /** + * 企业联系人手机号9 + */ + @Excel(name = "企业联系人手机号9", width = 17) + private String contactsPhone9; + /** + * 企业联系人邮箱9 + */ + @Excel(name = "企业联系人邮箱9", width = 15) + private String contactsEmail9; + /** + * 联系人备注9 + */ + @Excel(name = "联系人备注9", width = 15) + private String remarks9; + /** + * 企业联系人名称10 + */ + @Excel(name = "企业联系人10", width = 15) + private String contactsName10; + /** + * 企业联系人手机号10 + */ + @Excel(name = "企业联系人手机号10", width = 17) + private String contactsPhone10; + /** + * 企业联系人邮箱10 + */ + @Excel(name = "企业联系人邮箱10", width = 15) + private String contactsEmail10; + /** + * 联系人备注10 + */ + @Excel(name = "联系人备注10", width = 15) + private String remarks10; + + /** + * 企业联系人名称11 + */ + @Excel(name = "企业联系人11", width = 15) + private String contactsName11; + /** + * 企业联系人手机号11 + */ + @Excel(name = "企业联系人手机号11", width = 17) + private String contactsPhone11; + /** + * 企业联系人邮箱11 + */ + @Excel(name = "企业联系人邮箱11", width = 15) + private String contactsEmail11; + /** + * 联系人备注11 + */ + @Excel(name = "联系人备注11", width = 15) + private String remarks11; + /** + * 企业联系人名称12 + */ + @Excel(name = "企业联系人12", width = 15) + private String contactsName12; + /** + * 企业联系人手机号12 + */ + @Excel(name = "企业联系人手机号12", width = 17) + private String contactsPhone12; + /** + * 企业联系人邮箱12 + */ + @Excel(name = "企业联系人邮箱12", width = 15) + private String contactsEmail12; + /** + * 联系人备注12 + */ + @Excel(name = "联系人备注12", width = 15) + private String remarks12; + /** + * 企业联系人名称13 + */ + @Excel(name = "企业联系人13", width = 15) + private String contactsName13; + /** + * 企业联系人手机号13 + */ + @Excel(name = "企业联系人手机号13", width = 17) + private String contactsPhone13; + /** + * 企业联系人邮箱13 + */ + @Excel(name = "企业联系人邮箱13", width = 15) + private String contactsEmail13; + /** + * 联系人备注13 + */ + @Excel(name = "联系人备注13", width = 15) + private String remarks13; + /** + * 企业联系人名称14 + */ + @Excel(name = "企业联系人14", width = 15) + private String contactsName14; + /** + * 企业联系人手机号14 + */ + @Excel(name = "企业联系人手机号14", width = 17) + private String contactsPhone14; + /** + * 企业联系人邮箱14 + */ + @Excel(name = "企业联系人邮箱14", width = 15) + private String contactsEmail14; + /** + * 联系人备注14 + */ + @Excel(name = "联系人备注14", width = 15) + private String remarks14; + /** + * 企业联系人名称15 + */ + @Excel(name = "企业联系人15", width = 15) + private String contactsName15; + /** + * 企业联系人手机号15 + */ + @Excel(name = "企业联系人手机号15", width = 17) + private String contactsPhone15; + /** + * 企业联系人邮箱15 + */ + @Excel(name = "企业联系人邮箱15", width = 15) + private String contactsEmail15; + /** + * 联系人备注15 + */ + @Excel(name = "联系人备注15", width = 15) + private String remarks15; + /** + * 企业联系人名称16 + */ + @Excel(name = "企业联系人16", width = 15) + private String contactsName16; + /** + * 企业联系人手机号16 + */ + @Excel(name = "企业联系人手机号16", width = 17) + private String contactsPhone16; + /** + * 企业联系人邮箱16 + */ + @Excel(name = "企业联系人邮箱16", width = 15) + private String contactsEmail16; + /** + * 联系人备注16 + */ + @Excel(name = "联系人备注16", width = 15) + private String remarks16; + /** + * 企业联系人名称17 + */ + @Excel(name = "企业联系人17", width = 15) + private String contactsName17; + /** + * 企业联系人手机号17 + */ + @Excel(name = "企业联系人手机号17", width = 17) + private String contactsPhone17; + /** + * 企业联系人邮箱17 + */ + @Excel(name = "企业联系人邮箱17", width = 15) + private String contactsEmail17; + /** + * 联系人备注17 + */ + @Excel(name = "联系人备注17", width = 15) + private String remarks17; + /** + * 企业联系人名称18 + */ + @Excel(name = "企业联系人18", width = 15) + private String contactsName18; + /** + * 企业联系人手机号18 + */ + @Excel(name = "企业联系人手机号18", width = 17) + private String contactsPhone18; + /** + * 企业联系人邮箱18 + */ + @Excel(name = "企业联系人邮箱18", width = 15) + private String contactsEmail18; + /** + * 联系人备注18 + */ + @Excel(name = "联系人备注18", width = 15) + private String remarks18; + /** + * 企业联系人名称19 + */ + @Excel(name = "企业联系人19", width = 15) + private String contactsName19; + /** + * 企业联系人手机号19 + */ + @Excel(name = "企业联系人手机号19", width = 17) + private String contactsPhone19; + /** + * 企业联系人邮箱19 + */ + @Excel(name = "企业联系人邮箱19", width = 15) + private String contactsEmail19; + /** + * 联系人备注19 + */ + @Excel(name = "联系人备注19", width = 15) + private String remarks19; + /** + * 企业联系人名称20 + */ + @Excel(name = "企业联系人20", width = 15) + private String contactsName20; + /** + * 企业联系人手机号20 + */ + @Excel(name = "企业联系人手机号20", width = 17) + private String contactsPhone20; + /** + * 企业联系人邮箱20 + */ + @Excel(name = "企业联系人邮箱20", width = 15) + private String contactsEmail20; + /** + * 联系人备注20 + */ + @Excel(name = "联系人备注20", width = 15) + private String remarks20; + + } \ No newline at end of file diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/mail/mapper/PayMailBillMapper.java b/jero-boot-incoming-payment/src/main/java/com/jero/mail/mapper/PayMailBillMapper.java index def5eaab..c40dcbfc 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/mail/mapper/PayMailBillMapper.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/mail/mapper/PayMailBillMapper.java @@ -72,7 +72,7 @@ public interface PayMailBillMapper extends BaseMapper { PayContactsManagement print(@Param("id") String id); - Integer updateByProjectId(@Param("updated") PayMailBill payMailBill, @Param("projectId") String projectId); + Integer updateByProjectId(@Param("updated") PayMailBill payMailBill, @Param("idList") List idList); Integer updateTax(@Param("id") String id); diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/mail/mapper/PayMailBillProjectMapper.java b/jero-boot-incoming-payment/src/main/java/com/jero/mail/mapper/PayMailBillProjectMapper.java index 62793c85..fdf266a2 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/mail/mapper/PayMailBillProjectMapper.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/mail/mapper/PayMailBillProjectMapper.java @@ -1,17 +1,26 @@ package com.jero.mail.mapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import java.util.List; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.jero.mail.entity.PayMailBillProject; -import io.lettuce.core.dynamic.annotation.Param; -import java.math.BigDecimal; +import java.util.stream.Collectors; /** * @Description: pay_mail_bill_project * @Author: jeecg-boot - * @Date: 2021-08-31 + * @Date: 2021-08-31 * @Version: V1.0 */ public interface PayMailBillProjectMapper extends BaseMapper { + default List selectBillIdByProjectId(String projectId) { + LambdaQueryWrapper myQuery = Wrappers.lambdaQuery(PayMailBillProject.class); + myQuery.eq(PayMailBillProject::getProjectId, projectId); + myQuery.select(PayMailBillProject::getBillId); + return selectList(myQuery).stream().map(PayMailBillProject::getBillId).collect(Collectors.toList()); + } + } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/mail/mapper/xml/PayMailBillMapper.xml b/jero-boot-incoming-payment/src/main/java/com/jero/mail/mapper/xml/PayMailBillMapper.xml index bd583184..7ec1be6a 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/mail/mapper/xml/PayMailBillMapper.xml +++ b/jero-boot-incoming-payment/src/main/java/com/jero/mail/mapper/xml/PayMailBillMapper.xml @@ -197,11 +197,10 @@ - id in ( - select bill_id - from pay_mail_bill_project - where project_id = #{projectId} - ) + id in + + #{item} + and post_status = 0 diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/mail/service/impl/PayMailBillServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/mail/service/impl/PayMailBillServiceImpl.java index 4b089794..806041ed 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/mail/service/impl/PayMailBillServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/mail/service/impl/PayMailBillServiceImpl.java @@ -1,5 +1,6 @@ package com.jero.mail.service.impl; +import cn.hutool.core.collection.CollectionUtil; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; @@ -604,7 +605,10 @@ public class PayMailBillServiceImpl extends ServiceImpl idList = payMailBillProjectMapper.selectBillIdByProjectId(projectId); + if (CollectionUtil.isNotEmpty(idList)){ + payMailBillMapper.updateByProjectId(mailBill,idList); + } } @Override diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/common/MeetingSubitemCommon.java b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/common/MeetingSubitemCommon.java index 0ad21af2..cbb39e6e 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/common/MeetingSubitemCommon.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/common/MeetingSubitemCommon.java @@ -94,7 +94,7 @@ public class MeetingSubitemCommon { */ public static final Integer SIGNUP_STATUS_2 = 2; /** - * 需要缴费-非成员已报名审核 + * 需要缴费-非成员已报名待审核 */ public static final Integer REGISTER_PROCESS_1 = 1; /** @@ -102,7 +102,7 @@ public class MeetingSubitemCommon { */ public static final Integer REGISTER_PROCESS_2 = 2; /** - * 需要缴费-付款方式为汇款现场缴费 + * 需要缴费-付款方式为汇款现场缴费 待上传凭证 */ public static final Integer REGISTER_PROCESS_3 = 3; /** @@ -122,23 +122,23 @@ public class MeetingSubitemCommon { */ public static final Integer REGISTER_PROCESS_7 = 7; /** - * 需要缴费-付款方式为汇款 的先签到 但是没有上传凭证 报名状态为已签到 + * 需要缴费-付款方式为汇款 的先签到 但是没有上传凭证 报名状态为已签到-待上传凭证 */ public static final Integer REGISTER_PROCESS_8 = 8; /** - * 需要缴费-付款方式为汇款 的先签到 但是没有上传凭证 报名状态为已签到 + * 需要缴费-付款方式为汇款 的先签到 但是没有上传凭证 报名状态为已签到-凭证待审核 */ public static final Integer REGISTER_PROCESS_9 = 9; /** - * 需要缴费-付款方式为汇款 的先签到 但是没有上传凭证 报名状态为已签到 + * 需要缴费-付款方式为汇款 的先签到 但是没有上传凭证 报名状态为已签到-凭证被拒绝 */ public static final Integer REGISTER_PROCESS_10 = 10; /** - * 需要缴费-付款方式为汇款 的先签到 但是没有上传凭证 报名状态为已签到 + * 需要缴费-付款方式为汇款 的先签到 但是没有上传凭证 报名状态为已签到-缴费成功 */ public static final Integer REGISTER_PROCESS_11 = 11; /** - * 不需要缴费-非成员已报名审核 + * 不需要缴费-非成员已报名待审核 */ public static final Integer REGISTER_PROCESS_12 = 12; /** diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/controller/PayMeetingController.java b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/controller/PayMeetingController.java index 86034ccb..64aa8746 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/controller/PayMeetingController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/controller/PayMeetingController.java @@ -29,6 +29,7 @@ import com.jero.data.service.IPayCaseCommitteeService; import com.jero.data.service.IPayCaseCommitteeSubitemService; import com.jero.data.service.IPayCaseCouncilSubitemService; import com.jero.meeting.common.MeetingCommon; +import com.jero.meeting.common.MeetingSubitemCommon; import com.jero.meeting.entity.*; import com.jero.meeting.mapper.PayMeetingGuestsFileMapper; import com.jero.meeting.service.*; @@ -184,6 +185,7 @@ public class PayMeetingController extends JeroController0 && <总金额(半满标志))*/ //@Excel(name = "开票", width = 15) @ApiModelProperty(value = "开票") private Integer makeInvoice; diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/service/impl/PayMeetingSituationServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/service/impl/PayMeetingSituationServiceImpl.java index 137a0bf0..67091017 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/service/impl/PayMeetingSituationServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/service/impl/PayMeetingSituationServiceImpl.java @@ -376,8 +376,7 @@ public class PayMeetingSituationServiceImpl extends ServiceImpl updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.eq(PayMeetingSituation::getId,situationId); + updateWrapper.set(PayMeetingSituation::getPaymentStatus,null); + this.update(updateWrapper); }else { - //todo 这里的缴费状态需要处理下,审核后就不应该变了 - payMeetingSituation1.setPaymentStatus(PaymentStatusEnum.TO_BE_UPLOADED.getCode()); + if (situationId == null){ + payMeetingSituation1.setPaymentStatus(PaymentStatusEnum.TO_BE_UPLOADED.getCode()); + }else { + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.select(PayMeetingSituation::getPayMode); + wrapper.eq(PayMeetingSituation::getId,situationId); + PayMeetingSituation old = this.getOne(wrapper); + Integer oldPayMode = old.getPayMode(); + if (MeetingSubitemCommon.PAY_MODE_3.equals(oldPayMode)){ + payMeetingSituation1.setPaymentStatus(PaymentStatusEnum.TO_BE_UPLOADED.getCode()); + } + } if (Objects.equals(payMeetingSituation1.getRegisterCheckResult(),MeetingSubitemCommon.SIGNUP_STATUS_1)){ payMeetingSituation1.setRegisterProcess(MeetingSubitemCommon.REGISTER_PROCESS_3); }else { @@ -1786,6 +1811,11 @@ public class PayMeetingSituationServiceImpl extends ServiceImpl0 && <总金额(半满标志))*/ @ApiModelProperty(value = "开票") private Integer makeInvoice; diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/vo/excel/CommitteeSituationExcel.java b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/vo/excel/CommitteeSituationExcel.java index b76fb4ea..8553a869 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/vo/excel/CommitteeSituationExcel.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/vo/excel/CommitteeSituationExcel.java @@ -1,6 +1,7 @@ package com.jero.meeting.vo.excel; import com.jero.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; import org.jeecgframework.poi.excel.annotation.Excel; @@ -72,6 +73,15 @@ public class CommitteeSituationExcel extends SituationBaseExcel { @Excel(name = "需要发票", width = 15,dicCode = "invoice_type") private Integer needInvoice; + /**缴费凭证*/ + @Excel(name = "缴费凭证", type = 2 ,width = 40 , height = 20) + private String paymentRecord; + + /**到账*/ + @ApiModelProperty(value = "到账") + @Excel(name = "是否到账", width = 15, dicCode = "account_type") + private Integer inAccount; + /**订单后4位编码*/ @Excel(name = "订单后4位编码", width = 15) private String orderCode; diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/vo/excel/CouncilSituationExcel.java b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/vo/excel/CouncilSituationExcel.java index dc681247..b62c133b 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/vo/excel/CouncilSituationExcel.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/vo/excel/CouncilSituationExcel.java @@ -1,6 +1,7 @@ package com.jero.meeting.vo.excel; import com.jero.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; import org.jeecgframework.poi.excel.annotation.Excel; @@ -72,6 +73,15 @@ public class CouncilSituationExcel extends SituationBaseExcel { @Excel(name = "需要发票", width = 15,dicCode = "invoice_type") private Integer needInvoice; + /**缴费凭证*/ + @Excel(name = "缴费凭证", type = 2 ,width = 40 , height = 20) + private String paymentRecord; + + /**到账*/ + @ApiModelProperty(value = "到账") + @Excel(name = "是否到账", width = 15, dicCode = "account_type") + private Integer inAccount; + /**订单后4位编码*/ @Excel(name = "订单后4位编码", width = 15) private String orderCode; diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/vo/excel/DraftingGroupSituationExcel.java b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/vo/excel/DraftingGroupSituationExcel.java index 647ec1da..5ace9bb8 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/vo/excel/DraftingGroupSituationExcel.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/vo/excel/DraftingGroupSituationExcel.java @@ -1,6 +1,7 @@ package com.jero.meeting.vo.excel; import com.jero.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; import org.jeecgframework.poi.excel.annotation.Excel; @@ -48,28 +49,4 @@ public class DraftingGroupSituationExcel extends SituationBaseExcel { @Excel(name = "离开时间", width = 20, format = "yyyy-MM-dd") private java.util.Date departureTime; - /**邮寄联系人*/ - @Excel(name = "邮寄联系人", width = 15, dictTable = "pay_contacts_management", dicText = "name", dicCode = "id") - private String postContactId; - - /**邮寄联系人地址*/ - @Excel(name = "邮寄联系人地址", width = 15) - private String postContactAddress; - - /**邮编*/ - @Excel(name = "邮编", width = 15) - private String postCode; - - /**缴费方式*/ - @Excel(name = "缴费方式", width = 15,dicCode = "meeting_pay_type") - private Integer payMode; - - /**需要发票*/ - @Excel(name = "需要发票", width = 15,dicCode = "invoice_type") - private Integer needInvoice; - - /**订单后4位编码*/ - @Excel(name = "订单后4位编码", width = 15) - private String orderCode; - } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/vo/excel/InternationalSituationExcel.java b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/vo/excel/InternationalSituationExcel.java index 43632b8d..5d63f4db 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/vo/excel/InternationalSituationExcel.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/vo/excel/InternationalSituationExcel.java @@ -142,6 +142,15 @@ public class InternationalSituationExcel extends SituationBaseExcel { @Excel(name = "需要发票", width = 15,dicCode = "invoice_type") private Integer needInvoice; + /**缴费凭证*/ + @Excel(name = "缴费凭证", type = 2 ,width = 40 , height = 20) + private String paymentRecord; + + /**到账*/ + @ApiModelProperty(value = "到账") + @Excel(name = "是否到账", width = 15, dicCode = "account_type") + private Integer inAccount; + /**订单后4位编码*/ @Excel(name = "订单后4位编码", width = 15) private String orderCode; diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/vo/excel/SituationBaseExcel.java b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/vo/excel/SituationBaseExcel.java index 00d289d0..16d5bc6f 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/vo/excel/SituationBaseExcel.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/vo/excel/SituationBaseExcel.java @@ -1,5 +1,6 @@ package com.jero.meeting.vo.excel; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; import org.jeecgframework.poi.excel.annotation.Excel; @@ -10,9 +11,8 @@ import org.jeecgframework.poi.excel.annotation.Excel; @Data public class SituationBaseExcel { /**签到文件*/ - @Excel(name = "手动签到", type = 2 ,width = 40 , height = 20,imageType = 3) + @Excel(name = "手动签到", type = 2 ,width = 40 , height = 20) private String checkFile; - /**发票项目*/ @Excel(name = "发票项目", dicCode = "invoice_project", width = 15) private Integer invoiceProject; diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/vo/excel/SituationExcel.java b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/vo/excel/SituationExcel.java index a4e06806..12764336 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/vo/excel/SituationExcel.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/vo/excel/SituationExcel.java @@ -1,6 +1,7 @@ package com.jero.meeting.vo.excel; import com.jero.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; import org.jeecgframework.poi.excel.annotation.Excel; @@ -72,6 +73,15 @@ public class SituationExcel extends SituationBaseExcel{ @Excel(name = "需要发票", width = 15,dicCode = "invoice_type") private Integer needInvoice; + /**缴费凭证*/ + @Excel(name = "缴费凭证", type = 2 ,width = 40 , height = 20) + private String paymentRecord; + + /**到账*/ + @ApiModelProperty(value = "到账") + @Excel(name = "是否到账", width = 15, dicCode = "account_type") + private Integer inAccount; + /**订单后4位编码*/ @Excel(name = "订单后4位编码", width = 15) private String orderCode; diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/vo/excel/StandardsSituationExcel.java b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/vo/excel/StandardsSituationExcel.java index 623aa67c..3d2fc6cb 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/vo/excel/StandardsSituationExcel.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/vo/excel/StandardsSituationExcel.java @@ -88,6 +88,15 @@ public class StandardsSituationExcel extends SituationBaseExcel { @Excel(name = "需要发票", width = 15,dicCode = "invoice_type") private Integer needInvoice; + /**缴费凭证*/ + @Excel(name = "缴费凭证", type = 2 ,width = 40 , height = 20) + private String paymentRecord; + + /**到账*/ + @ApiModelProperty(value = "到账") + @Excel(name = "是否到账", width = 15, dicCode = "account_type") + private Integer inAccount; + /**订单后4位编码*/ @Excel(name = "订单后4位编码", width = 15) private String orderCode; diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/vo/excel/WorkingGroupSituationExcel.java b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/vo/excel/WorkingGroupSituationExcel.java index 3d1aa14e..105eabb1 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/meeting/vo/excel/WorkingGroupSituationExcel.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/meeting/vo/excel/WorkingGroupSituationExcel.java @@ -1,6 +1,7 @@ package com.jero.meeting.vo.excel; import com.jero.common.aspect.annotation.Dict; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; import org.jeecgframework.poi.excel.annotation.Excel; @@ -73,6 +74,15 @@ public class WorkingGroupSituationExcel extends SituationBaseExcel { @Excel(name = "需要发票", width = 15,dicCode = "invoice_type") private Integer needInvoice; + /**缴费凭证*/ + @Excel(name = "缴费凭证", type = 2 ,width = 40 , height = 20) + private String paymentRecord; + + /**到账*/ + @ApiModelProperty(value = "到账") + @Excel(name = "是否到账", width = 15, dicCode = "account_type") + private Integer inAccount; + /**订单后4位编码*/ @Excel(name = "订单后4位编码", width = 15) private String orderCode; diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/member/controller/TbMemberProjectSubitemController.java b/jero-boot-incoming-payment/src/main/java/com/jero/member/controller/TbMemberProjectSubitemController.java index 9cdce667..4a681a14 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/member/controller/TbMemberProjectSubitemController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/member/controller/TbMemberProjectSubitemController.java @@ -10,6 +10,7 @@ import javax.servlet.http.HttpServletRequest; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.jero.common.api.vo.Result; +import com.jero.common.constant.CommonConstant; import com.jero.common.exception.JeroBootException; import com.jero.common.system.api.ISysBaseAPI; import com.jero.common.system.query.QueryGenerator; @@ -27,6 +28,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.jero.member.vo.*; +import com.jero.project.common.PayProjectCommon; import com.jero.temporary.entity.PayCompanyManagementTemporary; import com.jero.temporary.entity.PayContactsManagementTemporary; import com.jero.temporary.service.IPayCompanyManagementTemporaryService; @@ -325,6 +327,14 @@ public class TbMemberProjectSubitemController extends JeroController0 && <总金额(半满标志))*/ @ApiModelProperty(value = "开票") - @Dict(dicCode = "yn") private Integer makeInvoice; /** diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/member/entity/TbMemberProjectSubitem.java b/jero-boot-incoming-payment/src/main/java/com/jero/member/entity/TbMemberProjectSubitem.java index e3aac268..9bf28ca7 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/member/entity/TbMemberProjectSubitem.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/member/entity/TbMemberProjectSubitem.java @@ -237,6 +237,11 @@ public class TbMemberProjectSubitem implements Serializable { @Excel(name = "是否开票", width = 15, dicCode = "make_invoice_type") private Integer makeInvoice; + /**是否借票*/ + @TableField(exist = false) + @Excel(name = "是否借票", width = 15, dicCode = "yn") + private Integer borrowTicket; + @ApiModelProperty(value = "确认收入((1:全额(对勾),0:0(X),2:>0 && <总金额(半满标志)))") @Excel(name = "是否确收", width = 15, dicCode = "affirmi_ncome") private Integer affirmIncome; diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/member/service/IPayMemberProjectSubitemService.java b/jero-boot-incoming-payment/src/main/java/com/jero/member/service/IPayMemberProjectSubitemService.java index e59fbb62..496bc406 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/member/service/IPayMemberProjectSubitemService.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/member/service/IPayMemberProjectSubitemService.java @@ -27,6 +27,7 @@ import com.jero.member.mapper.PayMemberProjectMapper; import com.jero.member.mapper.PayMemberProjectSubitemMapper; import com.jero.pack.entity.PayPackCompanyProject; import com.jero.pack.service.IPayPackCompanyProjectService; +import com.jero.payment.service.IPayPaymentCheckService; import com.jero.project.common.PayProjectCommon; import com.jero.project.entity.AnnualDataLocking; import com.jero.project.service.AnnualDataLockingService; @@ -82,6 +83,8 @@ public class IPayMemberProjectSubitemService extends ServiceImpl0){ + payMemberProjectSubitem.setPaymentStatus(PayProjectCommon.PAYMENT_STATUS); + } save(payMemberProjectSubitem); // 来款方式为合同,校验合同编号 if(Objects.equals(payMemberProjectSubitem.getPaymentMethod(),PayProjectCommon.CHARGE_WAY2)){ @@ -145,7 +152,7 @@ public class IPayMemberProjectSubitemService extends ServiceImpl 0){ + if(amountReceivable.compareTo(new BigDecimal("0")) > 0){ paySendContactsMessageDTO.setFlag(ProjectCommon.FLAG0 + "," + ProjectCommon.FLAG1); } JSONObject json = new JSONObject(); @@ -227,6 +234,9 @@ public class IPayMemberProjectSubitemService extends ServiceImpl queryPageList(Page page, PayPackCompany payPackCompany) { return payPackCompanyMapper.queryPageList(page,payPackCompany); @@ -236,65 +239,20 @@ public class PayPackCompanyServiceImpl extends ServiceImpl queryPayMailBillProject = new LambdaQueryWrapper<>(); - queryPayMailBillProject.eq(PayMailBillProject::getProjectId, payPackCompanyOld.getId()); - List listPayMailBillProject = payMailBillProjectService.list(queryPayMailBillProject); - // 开票金额 - BigDecimal invoice = new BigDecimal("0.00"); - if (!CollectionUtils.isEmpty(listPayMailBillProject)) { - BigDecimal b = listPayMailBillProject.stream().map(PayMailBillProject::getInvoiceAmount).reduce(BigDecimal.ZERO, BigDecimal::add); - invoice = invoice.add(b); - if (receivableAmount.compareTo(invoice) < 0) { - throw new JeroBootException("待确收金额不可小于实收金额,请先修改实际来款后再来修改!"); + // 变更待确收金额,重新校验状态 + ProjectStatusVO projectStatusVO = projectDetailService.getStatus(payPackCompany.getId(), receivableAmount,needInvoice); + if(!Objects.isNull(projectStatusVO)){ + if(!Objects.isNull(projectStatusVO.getInAccount())){ + payPackCompany.setInAccount(projectStatusVO.getInAccount()); } - } - // 到账 - // 待确收金额 = 实收金额 = 1 - if (receivableAmount.compareTo(payPackCompanyOld.getPaidAmount()) == 0) { - payPackCompany.setInAccount(ProjectCommon.IN_ACCOUNT1); - } - // 0 = 实收金额 = 0 - if (payPackCompanyOld.getPaidAmount().compareTo(new BigDecimal("0.00")) == 0) { - payPackCompany.setInAccount(ProjectCommon.IN_ACCOUNT0); - } - // 0 < 实收金额 && 实收金额 < 待确收金额 = 2 - if (payPackCompanyOld.getPaidAmount().compareTo(new BigDecimal("0.00")) > 0 - && payPackCompanyOld.getPaidAmount().compareTo(receivableAmount) < 0) { - payPackCompany.setInAccount(ProjectCommon.IN_ACCOUNT2); - } - // 开票 - // 不需要开票 - if (Objects.equals(payPackCompanyOld.getNeedInvoice(), ProjectCommon.NEED_INVOICE0)) { - payPackCompany.setMakeInvoice(ProjectCommon.MAKE_INVOICE0); - } else { - // 开票金额 = 待确收金额 = 1 - if (invoice.compareTo(receivableAmount) == 0) { - payPackCompany.setMakeInvoice(ProjectCommon.MAKE_INVOICE1); + if(!Objects.isNull(projectStatusVO.getMakeInvoice())){ + payPackCompany.setMakeInvoice(projectStatusVO.getMakeInvoice()); } - // 开票金额 = 0 = 0 - if (invoice.compareTo(new BigDecimal("0.00")) == 0) { - payPackCompany.setMakeInvoice(ProjectCommon.MAKE_INVOICE0); - } - // 开票金额 > 0 && 开票金额 < 待确收金额 = 2 - if (invoice.compareTo(new BigDecimal("0.00")) > 0 && invoice.compareTo(receivableAmount) < 0) { - payPackCompany.setMakeInvoice(ProjectCommon.MAKE_INVOICE2); + if(!Objects.isNull(projectStatusVO.getAffirmIncome())){ + payPackCompany.setIncomeAffirm(projectStatusVO.getAffirmIncome()); } } + return payPackCompany; } } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/payment/controller/PayPaymentCheckController.java b/jero-boot-incoming-payment/src/main/java/com/jero/payment/controller/PayPaymentCheckController.java index d6ac0df4..e9c4c544 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/payment/controller/PayPaymentCheckController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/payment/controller/PayPaymentCheckController.java @@ -8,8 +8,8 @@ import com.jero.member.entity.TbCertificatePayment; import com.jero.member.entity.TbMemberProjectSubitem; import com.jero.member.service.ITbCertificatePaymentService; import com.jero.member.service.ITbMemberProjectSubitemService; -import com.jero.payment.entity.PayPaymentRecordSub; import com.jero.payment.entity.PayPaymentRecord; +import com.jero.payment.entity.PayPaymentRecordSub; import com.jero.payment.service.IPayPaymentCheckService; import com.jero.payment.service.IPayPaymentRecordService; import io.swagger.annotations.Api; @@ -130,6 +130,16 @@ public class PayPaymentCheckController extends JeroController getLastProof(String projectId) { + PayPaymentRecordSub sub = payPaymentCheckService.getLastProof(projectId); + if (sub == null) { + return Result.OK("无数据"); + } + return Result.OK(sub); + } + @ApiOperation(value="标协会员项目详情", notes="标协会员项目详情") @GetMapping(value = "/getTbMemberProject") diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/payment/mapper/xml/PayPaymentRecordMapper.xml b/jero-boot-incoming-payment/src/main/java/com/jero/payment/mapper/xml/PayPaymentRecordMapper.xml index f2e488c9..6a92a389 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/payment/mapper/xml/PayPaymentRecordMapper.xml +++ b/jero-boot-incoming-payment/src/main/java/com/jero/payment/mapper/xml/PayPaymentRecordMapper.xml @@ -279,37 +279,39 @@ AND tcp.affirm_income = #{payCommonProject.affirmIncome} - - UNION ALL - select ppc.id,ppc.company_temporary_name AS charge_project,22 AS charge_use,ppc.pack_principal_id as principal_id,su.realname AS principal_name,ppc.company_id as charge_company_id,ppc.company_temporary_name as charge_company_temporary_name,ppc.receivable_amount,ppc.paid_amount, - ppc.need_invoice,1 AS pack,ppc.in_account,ppc.make_invoice,NULL AS mail,ppc.create_time,8 AS projectType,ppc.invoice_amount,ppc.mail_contacts_id,'' AS register_check_result,ppc.pack_contact_temporary_name as contacts_temporary_name,NULL AS payment_status,ppc.company_temporary_id,ppc.confirm_amount,ppc.income_affirm AS affirm_income,0 AS admin_add_flag - from pay_pack_company ppc - left join sys_user su on ppc.pack_principal_id = su.id - left join pay_company_management on ppc.company_id = pay_company_management.id - where - ppc.receivable_amount ]]> 0 - and ppc.receivable_amount is not null - - AND pay_company_management.company_name like concat('%',#{payCommonProject.chargeCompanyTemporaryName},'%') - - - AND ppc.pack_principal_id = #{payCommonProject.principalId} - - - AND ppc.company_temporary_name like concat('%',concat(#{payCommonProject.chargeProject},'%')) - - - - AND (ppc.paid_amount ]]> ppc.invoice_amount or - (ppc.paid_amount is not null and ppc.paid_amount !=0 and ppc.invoice_amount is null)) - - - - AND (ppc.paid_amount ppc.invoice_amount or - (ppc.paid_amount is null and ppc.invoice_amount is not null and ppc.invoice_amount !=0)) - - - AND ppc.income_affirm = #{payCommonProject.affirmIncome} + + + UNION ALL + select ppc.id,ppc.company_temporary_name AS charge_project,22 AS charge_use,ppc.pack_principal_id as principal_id,su.realname AS principal_name,ppc.company_id as charge_company_id,ppc.company_temporary_name as charge_company_temporary_name,ppc.receivable_amount,ppc.paid_amount, + ppc.need_invoice,1 AS pack,ppc.in_account,ppc.make_invoice,NULL AS mail,ppc.create_time,8 AS projectType,ppc.invoice_amount,ppc.mail_contacts_id,'' AS register_check_result,ppc.pack_contact_temporary_name as contacts_temporary_name,NULL AS payment_status,ppc.company_temporary_id,ppc.confirm_amount,ppc.income_affirm AS affirm_income,0 AS admin_add_flag + from pay_pack_company ppc + left join sys_user su on ppc.pack_principal_id = su.id + left join pay_company_management on ppc.company_id = pay_company_management.id + where + ppc.receivable_amount ]]> 0 + and ppc.receivable_amount is not null + + AND pay_company_management.company_name like concat('%',#{payCommonProject.chargeCompanyTemporaryName},'%') + + + AND ppc.pack_principal_id = #{payCommonProject.principalId} + + + AND ppc.company_temporary_name like concat('%',concat(#{payCommonProject.chargeProject},'%')) + + + + AND (ppc.paid_amount ]]> ppc.invoice_amount or + (ppc.paid_amount is not null and ppc.paid_amount !=0 and ppc.invoice_amount is null)) + + + + AND (ppc.paid_amount ppc.invoice_amount or + (ppc.paid_amount is null and ppc.invoice_amount is not null and ppc.invoice_amount !=0)) + + + AND ppc.income_affirm = #{payCommonProject.affirmIncome} + )p LEFT JOIN pay_payment_record ppr ON ppr.project_id = p.id diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/payment/service/IPayPaymentCheckService.java b/jero-boot-incoming-payment/src/main/java/com/jero/payment/service/IPayPaymentCheckService.java index 6e11d349..54d6e2e3 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/payment/service/IPayPaymentCheckService.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/payment/service/IPayPaymentCheckService.java @@ -55,4 +55,11 @@ public interface IPayPaymentCheckService extends IService { * @return */ String getPaymentStatus(BigDecimal amountReceivable, BigDecimal paidAmount, String paymentStatus, boolean changeReceivableAmountFlag); + + /** + * 获取最新一条缴费凭证 + * @param projectId + * @return + */ + PayPaymentRecordSub getLastProof(String projectId); } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/payment/service/impl/PayPaymentCheckServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/payment/service/impl/PayPaymentCheckServiceImpl.java index 092d640b..70b444d2 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/payment/service/impl/PayPaymentCheckServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/payment/service/impl/PayPaymentCheckServiceImpl.java @@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.jero.common.common.ProjectCommon; import com.jero.common.common.RoleCommon; +import com.jero.common.constant.CommonConstant; import com.jero.common.dto.SendMessageDTO; import com.jero.common.enums.CompanyMessageEnums; import com.jero.common.enums.LastSignEnum; @@ -23,6 +24,7 @@ import com.jero.config.StaticConfig; import com.jero.contract.common.PayIncomeContractCommon; import com.jero.meeting.mapper.PayMeetingSituationMapper; import com.jero.member.entity.*; +import com.jero.member.enums.MemberStatusEnum; import com.jero.member.mapper.PayMemberProjectSubitemMapper; import com.jero.member.mapper.TbCertificatePaymentMapper; import com.jero.member.mapper.TbMemberProjectSubitemMapper; @@ -237,6 +239,7 @@ public class PayPaymentCheckServiceImpl extends ServiceImpl wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(PayPaymentRecordSub::getProjectId, projectId); + wrapper.isNotNull(PayPaymentRecordSub::getProof); + wrapper.orderByDesc(PayPaymentRecordSub::getCreateTime); + wrapper.last("limit 1"); + return payPaymentCheckService.getOne(wrapper); + } } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/payment/service/impl/PayPaymentRecordServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/payment/service/impl/PayPaymentRecordServiceImpl.java index a01a05a3..1f7b3aee 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/payment/service/impl/PayPaymentRecordServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/payment/service/impl/PayPaymentRecordServiceImpl.java @@ -33,6 +33,7 @@ import com.jero.meeting.entity.PayMeetingSituation; import com.jero.meeting.mapper.PayMeetingSituationMapper; import com.jero.meeting.service.IPayMeetingService; import com.jero.member.entity.*; +import com.jero.member.enums.MemberStatusEnum; import com.jero.member.mapper.PayMemberProjectSubitemMapper; import com.jero.member.mapper.TbCertificatePaymentMapper; import com.jero.member.mapper.TbMemberProjectSubitemMapper; @@ -182,19 +183,20 @@ public class PayPaymentRecordServiceImpl extends ServiceImpl listPayWorkingGroupSubItemContacts = payWorkingGroupSubItemContactsList.stream().filter(o->Objects.equals(workingGroupSubItem.getId(),o.getWorkingGroupSubId())).collect(Collectors.toList()); if(!CollectionUtils.isEmpty(listPayWorkingGroupSubItemContacts)){ listPayWorkingGroupSubItemContacts.sort(Comparator.comparing(PayWorkingGroupSubItemContacts::getOrderNum)); @@ -897,6 +915,56 @@ public class PayWorkingGroupSubItemController extends JeroController updatePayCommonProject = new LambdaUpdateWrapper<>(); @@ -277,6 +280,15 @@ public class PayCommonProjectServiceImpl extends ServiceImpl lambdaQueryWrapper = new LambdaQueryWrapper<>(); lambdaQueryWrapper.eq(PayMeeting::getWorkingGroupId, projectId); lambdaQueryWrapper.eq(PayMeeting::getMeetingType, MeetingCommon.WORKING_GROUP_MEETING_INT); List list = payMeetingService.list(lambdaQueryWrapper); for (PayMeeting payMeeting : list) { String meetingName = payMeeting.getMeetingName(); - String meetingFolderPath = "会议资料/" + meetingName + "/"; + String meetingFolderPath = groupFolderPath + "会议资料/" + meetingName + "/"; String meetingMinutesFolderPath = meetingFolderPath + "会议纪要/"; String meetingDataFolderPath = meetingFolderPath + "上传文件/"; String meetingNoticeFilesPath = meetingFolderPath + "会议通知/"; diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/project/service/impl/PayWorkingGroupSubItemServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/project/service/impl/PayWorkingGroupSubItemServiceImpl.java index 7b4de1c6..9ed51e54 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/project/service/impl/PayWorkingGroupSubItemServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/project/service/impl/PayWorkingGroupSubItemServiceImpl.java @@ -8,6 +8,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.jero.common.common.ProjectCommon; +import com.jero.common.constant.CommonConstant; import com.jero.common.dto.PaySendContactsMessageDTO; import com.jero.common.dto.SendMessageDTO; import com.jero.common.enums.CompanyMessageEnums; @@ -30,6 +31,8 @@ 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.drafting.entity.PayDraftingGroupSubItem; +import com.jero.drafting.entity.PayDraftingGroupSubItemContacts; import com.jero.mail.service.IPayMailBillService; import com.jero.meeting.entity.PayMeetingRemindRecord; import com.jero.meeting.service.IPayMeetingRemindRecordService; @@ -445,10 +448,12 @@ public class PayWorkingGroupSubItemServiceImpl extends ServiceImpl listContactsName11 = list.stream().map(PayWorkingGroupSubItem::getContactsName11).collect(Collectors.toList()); + if(!CollectionUtils.isEmpty(listContactsName11)){ + listContactsName.addAll(listContactsName11); + } + // 获取excel中联系人12名称 + List listContactsName12 = list.stream().map(PayWorkingGroupSubItem::getContactsName12).collect(Collectors.toList()); + if(!CollectionUtils.isEmpty(listContactsName12)){ + listContactsName.addAll(listContactsName12); + } + // 获取excel中联系人13名称 + List listContactsName13 = list.stream().map(PayWorkingGroupSubItem::getContactsName13).collect(Collectors.toList()); + if(!CollectionUtils.isEmpty(listContactsName13)){ + listContactsName.addAll(listContactsName13); + } + // 获取excel中联系人14名称 + List listContactsName14 = list.stream().map(PayWorkingGroupSubItem::getContactsName14).collect(Collectors.toList()); + if(!CollectionUtils.isEmpty(listContactsName14)){ + listContactsName.addAll(listContactsName14); + } + // 获取excel中联系人15名称 + List listContactsName15 = list.stream().map(PayWorkingGroupSubItem::getContactsName15).collect(Collectors.toList()); + if(!CollectionUtils.isEmpty(listContactsName15)){ + listContactsName.addAll(listContactsName15); + } + // 获取excel中联系人16名称 + List listContactsName16 = list.stream().map(PayWorkingGroupSubItem::getContactsName16).collect(Collectors.toList()); + if(!CollectionUtils.isEmpty(listContactsName16)){ + listContactsName.addAll(listContactsName16); + } + // 获取excel中联系人17名称 + List listContactsName17 = list.stream().map(PayWorkingGroupSubItem::getContactsName17).collect(Collectors.toList()); + if(!CollectionUtils.isEmpty(listContactsName17)){ + listContactsName.addAll(listContactsName17); + } + // 获取excel中联系人18名称 + List listContactsName18 = list.stream().map(PayWorkingGroupSubItem::getContactsName18).collect(Collectors.toList()); + if(!CollectionUtils.isEmpty(listContactsName18)){ + listContactsName.addAll(listContactsName18); + } + // 获取excel中联系人19名称 + List listContactsName19 = list.stream().map(PayWorkingGroupSubItem::getContactsName19).collect(Collectors.toList()); + if(!CollectionUtils.isEmpty(listContactsName19)){ + listContactsName.addAll(listContactsName19); + } + // 获取excel中联系人20名称 + List listContactsName20 = list.stream().map(PayWorkingGroupSubItem::getContactsName20).collect(Collectors.toList()); + if(!CollectionUtils.isEmpty(listContactsName20)){ + listContactsName.addAll(listContactsName20); + } // 获取excel中邮寄联系人名称 List listContactsNameMail = list.stream().map(PayWorkingGroupSubItem::getMailContactsTemporaryName).collect(Collectors.toList()); if (!CollectionUtils.isEmpty(listContactsNameMail)) { @@ -903,6 +958,8 @@ public class PayWorkingGroupSubItemServiceImpl extends ServiceImpl listByIds (List contactsId); + } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/temporary/service/impl/PayContactsManagementTemporaryServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/temporary/service/impl/PayContactsManagementTemporaryServiceImpl.java index 94070164..8ad15004 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/temporary/service/impl/PayContactsManagementTemporaryServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/temporary/service/impl/PayContactsManagementTemporaryServiceImpl.java @@ -101,4 +101,15 @@ public class PayContactsManagementTemporaryServiceImpl extends ServiceImpl listByIds(List contactsId) { + List temporaryList = super.listByIds(contactsId); + List payContactsManagements = payContactsManagementService.listByIds(contactsId); + for (PayContactsManagement contactsManagement : payContactsManagements) { + String str = JSONObject.toJSONString(contactsManagement); + temporaryList.add(JSON.parseObject(str, PayContactsManagementTemporary.class)); + } + return temporaryList; + } }