update 更改企业名称时处理项目的单位名称(普通项目完成)
This commit is contained in:
+59
-29
@@ -1,6 +1,7 @@
|
|||||||
package com.jero.company.service.impl;
|
package com.jero.company.service.impl;
|
||||||
|
|
||||||
import cn.hutool.core.date.DateTime;
|
import cn.hutool.core.date.DateTime;
|
||||||
|
import cn.hutool.core.date.DateUtil;
|
||||||
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSON;
|
||||||
import com.alibaba.fastjson.JSONObject;
|
import com.alibaba.fastjson.JSONObject;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
@@ -52,6 +53,7 @@ import org.springframework.stereotype.Service;
|
|||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
|
import java.math.BigDecimal;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
@@ -742,43 +744,51 @@ public class PayCompanyManagementServiceImpl extends ServiceImpl<PayCompanyManag
|
|||||||
* @Exception
|
* @Exception
|
||||||
*/
|
*/
|
||||||
private void updateBatchData(PayCompanyManagement payCompanyManagement){
|
private void updateBatchData(PayCompanyManagement payCompanyManagement){
|
||||||
// 更新临时数据
|
|
||||||
LambdaUpdateWrapper<PayCompanyManagementTemporary> updatePayCompanyManagementTemporary = new LambdaUpdateWrapper<>();
|
|
||||||
updatePayCompanyManagementTemporary.eq(PayCompanyManagementTemporary::getCompanyId,payCompanyManagement.getId());
|
|
||||||
updatePayCompanyManagementTemporary.ge(PayCompanyManagementTemporary::getEditTime,payCompanyManagement.getEditTime());
|
|
||||||
updatePayCompanyManagementTemporary.set(PayCompanyManagementTemporary::getCompanyName,payCompanyManagement.getCompanyName());
|
|
||||||
updatePayCompanyManagementTemporary.set(PayCompanyManagementTemporary::getCompanyAddress,payCompanyManagement.getCompanyAddress());
|
|
||||||
updatePayCompanyManagementTemporary.set(PayCompanyManagementTemporary::getCompanyPhone,payCompanyManagement.getCompanyPhone());
|
|
||||||
updatePayCompanyManagementTemporary.set(PayCompanyManagementTemporary::getPostalCode,payCompanyManagement.getPostalCode());
|
|
||||||
updatePayCompanyManagementTemporary.set(PayCompanyManagementTemporary::getBankAccountName,payCompanyManagement.getBankAccountName());
|
|
||||||
updatePayCompanyManagementTemporary.set(PayCompanyManagementTemporary::getOpeningBank,payCompanyManagement.getOpeningBank());
|
|
||||||
updatePayCompanyManagementTemporary.set(PayCompanyManagementTemporary::getDutyCode,payCompanyManagement.getDutyCode());
|
|
||||||
updatePayCompanyManagementTemporary.set(PayCompanyManagementTemporary::getStatus,PayCompanyManagementCommon.STATUS1);
|
|
||||||
updatePayCompanyManagementTemporary.set(PayCompanyManagementTemporary::getDataSource,payCompanyManagement.getDataSource());
|
|
||||||
updatePayCompanyManagementTemporary.set(PayCompanyManagementTemporary::getRemarks,payCompanyManagement.getRemarks());
|
|
||||||
updatePayCompanyManagementTemporary.set(PayCompanyManagementTemporary::getEditTime,payCompanyManagement.getEditTime());
|
|
||||||
//updatePayCompanyManagementTemporary.set(PayCompanyManagementTemporary::getCreateBy,payCompanyManagement.getCreateBy());
|
|
||||||
//updatePayCompanyManagementTemporary.set(PayCompanyManagementTemporary::getCreateTime,payCompanyManagement.getCreateTime());
|
|
||||||
updatePayCompanyManagementTemporary.set(PayCompanyManagementTemporary::getUpdateBy,payCompanyManagement.getUpdateBy());
|
|
||||||
updatePayCompanyManagementTemporary.set(PayCompanyManagementTemporary::getUpdateTime,payCompanyManagement.getUpdateTime());
|
|
||||||
payCompanyManagementTemporaryService.update(updatePayCompanyManagementTemporary);
|
|
||||||
//更新人员
|
//更新人员
|
||||||
LambdaUpdateWrapper<PayContactsManagement> updatePayContactsManagement = new LambdaUpdateWrapper<>();
|
LambdaUpdateWrapper<PayContactsManagement> updatePayContactsManagement = new LambdaUpdateWrapper<>();
|
||||||
updatePayContactsManagement.eq(PayContactsManagement::getCompanyId,payCompanyManagement.getId());
|
updatePayContactsManagement.eq(PayContactsManagement::getCompanyId,payCompanyManagement.getId());
|
||||||
updatePayContactsManagement.set(PayContactsManagement::getCompanyName,payCompanyManagement.getCompanyName());
|
updatePayContactsManagement.set(PayContactsManagement::getCompanyName,payCompanyManagement.getCompanyName());
|
||||||
payContactsManagementService.update(updatePayContactsManagement);
|
payContactsManagementService.update(updatePayContactsManagement);
|
||||||
|
int thisYear = DateUtil.thisYear();
|
||||||
|
//需要更新的临时企业id
|
||||||
|
List<String> companyTemporaryIdList = new ArrayList<>();
|
||||||
// 更新普通项目
|
// 更新普通项目
|
||||||
LambdaUpdateWrapper<PayCommonProject> updatePayCommonProject = new LambdaUpdateWrapper<>();
|
LambdaQueryWrapper<PayCommonProject> quaryPayCommonProject = new LambdaQueryWrapper<>();
|
||||||
updatePayCommonProject.eq(PayCommonProject::getChargeCompanyId,payCompanyManagement.getId());
|
quaryPayCommonProject.eq(PayCommonProject::getChargeCompanyId,payCompanyManagement.getId());
|
||||||
//updatePayCommonProject.ge(PayCommonProject::getCreateTime,payCompanyManagement.getEditTime());
|
|
||||||
updatePayCommonProject.set(PayCommonProject::getChargeCompanyTemporaryName,payCompanyManagement.getCompanyName());
|
quaryPayCommonProject.eq(PayCommonProject::getYear,thisYear);
|
||||||
updatePayCommonProject.exists(" select 1 from pay_company_management_temporary where " +
|
quaryPayCommonProject.and(
|
||||||
"pay_common_project.charge_company_temporary_id = id and create_time >= '" + DateTime.of(payCompanyManagement.getEditTime()) + "'");
|
a -> {
|
||||||
payCommonProjectService.update(updatePayCommonProject);
|
a.eq(PayCommonProject::getPaidAmount, BigDecimal.ZERO)
|
||||||
|
.or()
|
||||||
|
.isNull(PayCommonProject::getPaidAmount);
|
||||||
|
});
|
||||||
|
quaryPayCommonProject.and(
|
||||||
|
a -> {
|
||||||
|
a.eq(PayCommonProject::getInvoiceAmount, BigDecimal.ZERO)
|
||||||
|
.or()
|
||||||
|
.isNull(PayCommonProject::getInvoiceAmount);
|
||||||
|
});
|
||||||
|
quaryPayCommonProject.and(
|
||||||
|
a -> {
|
||||||
|
a.eq(PayCommonProject::getConfirmAmount, BigDecimal.ZERO)
|
||||||
|
.or()
|
||||||
|
.isNull(PayCommonProject::getConfirmAmount);
|
||||||
|
});
|
||||||
|
List<PayCommonProject> list = payCommonProjectService.list(quaryPayCommonProject);
|
||||||
|
List<String> collect = list.stream().map(PayCommonProject::getChargeCompanyTemporaryId).collect(Collectors.toList());
|
||||||
|
companyTemporaryIdList.addAll(collect);
|
||||||
|
if (!collect.isEmpty()){
|
||||||
|
LambdaUpdateWrapper<PayCommonProject> updatePayCommonProject = new LambdaUpdateWrapper<>();
|
||||||
|
updatePayCommonProject.in(PayCommonProject::getChargeCompanyTemporaryId,collect);
|
||||||
|
updatePayCommonProject.set(PayCommonProject::getChargeCompanyTemporaryName,payCompanyManagement.getCompanyName());
|
||||||
|
payCommonProjectService.update(updatePayCommonProject);
|
||||||
|
}
|
||||||
|
|
||||||
// 更新工作组
|
// 更新工作组
|
||||||
LambdaUpdateWrapper<PayWorkingGroupSubItem> updatePayWorkingGroupSubItem = new LambdaUpdateWrapper<>();
|
LambdaUpdateWrapper<PayWorkingGroupSubItem> updatePayWorkingGroupSubItem = new LambdaUpdateWrapper<>();
|
||||||
updatePayWorkingGroupSubItem.eq(PayWorkingGroupSubItem::getChargeCompanyId,payCompanyManagement.getId());
|
updatePayWorkingGroupSubItem.eq(PayWorkingGroupSubItem::getChargeCompanyId,payCompanyManagement.getId());
|
||||||
//updatePayWorkingGroupSubItem.ge(PayWorkingGroupSubItem::getCreateTime,payCompanyManagement.getEditTime());
|
|
||||||
updatePayWorkingGroupSubItem.exists(" select 1 from pay_company_management_temporary where " +
|
updatePayWorkingGroupSubItem.exists(" select 1 from pay_company_management_temporary where " +
|
||||||
"pay_working_group_subitem.charge_company_temporary_id = id and create_time >= '" + DateTime.of(payCompanyManagement.getEditTime()) + "'");
|
"pay_working_group_subitem.charge_company_temporary_id = id and create_time >= '" + DateTime.of(payCompanyManagement.getEditTime()) + "'");
|
||||||
updatePayWorkingGroupSubItem.set(PayWorkingGroupSubItem::getChargeCompanyTemporaryName,payCompanyManagement.getCompanyName());
|
updatePayWorkingGroupSubItem.set(PayWorkingGroupSubItem::getChargeCompanyTemporaryName,payCompanyManagement.getCompanyName());
|
||||||
@@ -786,11 +796,31 @@ public class PayCompanyManagementServiceImpl extends ServiceImpl<PayCompanyManag
|
|||||||
// 更新会员
|
// 更新会员
|
||||||
LambdaUpdateWrapper<PayMemberProjectSubitem> updatePayMemberProjectSubitem = new LambdaUpdateWrapper<>();
|
LambdaUpdateWrapper<PayMemberProjectSubitem> updatePayMemberProjectSubitem = new LambdaUpdateWrapper<>();
|
||||||
updatePayMemberProjectSubitem.eq(PayMemberProjectSubitem::getCompanyId,payCompanyManagement.getId());
|
updatePayMemberProjectSubitem.eq(PayMemberProjectSubitem::getCompanyId,payCompanyManagement.getId());
|
||||||
//updatePayMemberProjectSubitem.ge(PayMemberProjectSubitem::getCreateTime,payCompanyManagement.getEditTime());
|
|
||||||
updatePayMemberProjectSubitem.exists(" select 1 from pay_company_management_temporary where " +
|
updatePayMemberProjectSubitem.exists(" select 1 from pay_company_management_temporary where " +
|
||||||
"pay_member_project_subitem.company_temporary_id = id and create_time >= '" + DateTime.of(payCompanyManagement.getEditTime()) + "'");
|
"pay_member_project_subitem.company_temporary_id = id and create_time >= '" + DateTime.of(payCompanyManagement.getEditTime()) + "'");
|
||||||
updatePayMemberProjectSubitem.set(PayMemberProjectSubitem::getCompanyName,payCompanyManagement.getCompanyName());
|
updatePayMemberProjectSubitem.set(PayMemberProjectSubitem::getCompanyName,payCompanyManagement.getCompanyName());
|
||||||
memberProjectSubitemService.update(updatePayMemberProjectSubitem);
|
memberProjectSubitemService.update(updatePayMemberProjectSubitem);
|
||||||
|
|
||||||
|
// 更新临时数据
|
||||||
|
if (!companyTemporaryIdList.isEmpty()) {
|
||||||
|
LambdaUpdateWrapper<PayCompanyManagementTemporary> updatePayCompanyManagementTemporary = new LambdaUpdateWrapper<>();
|
||||||
|
updatePayCompanyManagementTemporary.in(PayCompanyManagementTemporary::getId,companyTemporaryIdList);
|
||||||
|
updatePayCompanyManagementTemporary.set(PayCompanyManagementTemporary::getCompanyName,payCompanyManagement.getCompanyName());
|
||||||
|
updatePayCompanyManagementTemporary.set(PayCompanyManagementTemporary::getCompanyAddress,payCompanyManagement.getCompanyAddress());
|
||||||
|
updatePayCompanyManagementTemporary.set(PayCompanyManagementTemporary::getCompanyPhone,payCompanyManagement.getCompanyPhone());
|
||||||
|
updatePayCompanyManagementTemporary.set(PayCompanyManagementTemporary::getPostalCode,payCompanyManagement.getPostalCode());
|
||||||
|
updatePayCompanyManagementTemporary.set(PayCompanyManagementTemporary::getBankAccountName,payCompanyManagement.getBankAccountName());
|
||||||
|
updatePayCompanyManagementTemporary.set(PayCompanyManagementTemporary::getOpeningBank,payCompanyManagement.getOpeningBank());
|
||||||
|
updatePayCompanyManagementTemporary.set(PayCompanyManagementTemporary::getDutyCode,payCompanyManagement.getDutyCode());
|
||||||
|
updatePayCompanyManagementTemporary.set(PayCompanyManagementTemporary::getStatus,PayCompanyManagementCommon.STATUS1);
|
||||||
|
updatePayCompanyManagementTemporary.set(PayCompanyManagementTemporary::getDataSource,payCompanyManagement.getDataSource());
|
||||||
|
updatePayCompanyManagementTemporary.set(PayCompanyManagementTemporary::getRemarks,payCompanyManagement.getRemarks());
|
||||||
|
updatePayCompanyManagementTemporary.set(PayCompanyManagementTemporary::getEditTime,payCompanyManagement.getEditTime());
|
||||||
|
updatePayCompanyManagementTemporary.set(PayCompanyManagementTemporary::getUpdateBy,payCompanyManagement.getUpdateBy());
|
||||||
|
updatePayCompanyManagementTemporary.set(PayCompanyManagementTemporary::getUpdateTime,payCompanyManagement.getUpdateTime());
|
||||||
|
payCompanyManagementTemporaryService.update(updatePayCompanyManagementTemporary);
|
||||||
|
}
|
||||||
|
|
||||||
// 更新合同
|
// 更新合同
|
||||||
LambdaUpdateWrapper<PayIncomeContract> updatePayIncomeContract = new LambdaUpdateWrapper<>();
|
LambdaUpdateWrapper<PayIncomeContract> updatePayIncomeContract = new LambdaUpdateWrapper<>();
|
||||||
updatePayIncomeContract.eq(PayIncomeContract::getSignedCompanyId,payCompanyManagement.getId());
|
updatePayIncomeContract.eq(PayIncomeContract::getSignedCompanyId,payCompanyManagement.getId());
|
||||||
|
|||||||
+4
-2
@@ -11,7 +11,7 @@
|
|||||||
su.realname as principal_name,
|
su.realname as principal_name,
|
||||||
pcp.charge_company_id,
|
pcp.charge_company_id,
|
||||||
pcp.charge_company_temporary_id,
|
pcp.charge_company_temporary_id,
|
||||||
pcp.charge_company_temporary_name,
|
if(pcp.charge_company_temporary_name = pcm.company_name, pcp.charge_company_temporary_name, concat(pcp.charge_company_temporary_name,'(更名为',pcm.company_name,')')) as charge_company_temporary_name,
|
||||||
pcp.charge_use,
|
pcp.charge_use,
|
||||||
pcp.contacts_id,
|
pcp.contacts_id,
|
||||||
pcp.contacts_temporary_id,
|
pcp.contacts_temporary_id,
|
||||||
@@ -45,12 +45,14 @@
|
|||||||
FROM pay_common_project pcp
|
FROM pay_common_project pcp
|
||||||
left join sys_user su on pcp.principal_id = su.id
|
left join sys_user su on pcp.principal_id = su.id
|
||||||
LEFT JOIN pay_payment_record ppr ON ppr.project_id = pcp.id
|
LEFT JOIN pay_payment_record ppr ON ppr.project_id = pcp.id
|
||||||
|
left join pay_company_management_temporary pcmt on pcp.charge_company_temporary_id = pcmt.id
|
||||||
|
left join pay_company_management pcm on pcmt.company_id = pcm.id
|
||||||
<where>
|
<where>
|
||||||
<if test="payCommonProject.chargeProject != null and payCommonProject.chargeProject != ''">
|
<if test="payCommonProject.chargeProject != null and payCommonProject.chargeProject != ''">
|
||||||
AND pcp.charge_project like concat('%',concat(#{payCommonProject.chargeProject},'%'))
|
AND pcp.charge_project like concat('%',concat(#{payCommonProject.chargeProject},'%'))
|
||||||
</if>
|
</if>
|
||||||
<if test="payCommonProject.chargeCompanyTemporaryName != null and payCommonProject.chargeCompanyTemporaryName != ''">
|
<if test="payCommonProject.chargeCompanyTemporaryName != null and payCommonProject.chargeCompanyTemporaryName != ''">
|
||||||
AND pcp.charge_company_temporary_name like concat('%',concat(#{payCommonProject.chargeCompanyTemporaryName},'%'))
|
AND pcm.company_name like concat('%',concat(#{payCommonProject.chargeCompanyTemporaryName},'%'))
|
||||||
</if>
|
</if>
|
||||||
<if test="payCommonProject.contactsTemporaryName != null and payCommonProject.contactsTemporaryName != ''">
|
<if test="payCommonProject.contactsTemporaryName != null and payCommonProject.contactsTemporaryName != ''">
|
||||||
AND pcp.contacts_temporary_name like concat('%',concat(#{payCommonProject.contactsTemporaryName},'%'))
|
AND pcp.contacts_temporary_name like concat('%',concat(#{payCommonProject.contactsTemporaryName},'%'))
|
||||||
|
|||||||
Reference in New Issue
Block a user