update 删除标协会员或证书时,同时删除关联关系
This commit is contained in:
+8
@@ -16,6 +16,7 @@ import com.jero.member.service.ITbCertificatePaymentService;
|
|||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
|
import com.jero.member.service.ITbMemberProjectSubitemService;
|
||||||
import com.jero.member.vo.CertificatePaymentInfo;
|
import com.jero.member.vo.CertificatePaymentInfo;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import com.jero.common.system.base.controller.JeroController;
|
import com.jero.common.system.base.controller.JeroController;
|
||||||
@@ -41,6 +42,8 @@ import com.jero.common.aspect.annotation.AutoLog;
|
|||||||
public class TbCertificatePaymentController extends JeroController<TbCertificatePayment, ITbCertificatePaymentService> {
|
public class TbCertificatePaymentController extends JeroController<TbCertificatePayment, ITbCertificatePaymentService> {
|
||||||
@Autowired
|
@Autowired
|
||||||
private ITbCertificatePaymentService tbCertificatePaymentService;
|
private ITbCertificatePaymentService tbCertificatePaymentService;
|
||||||
|
@Resource
|
||||||
|
private ITbMemberProjectSubitemService tbMemberProjectSubitemService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 分页列表查询
|
* 分页列表查询
|
||||||
@@ -138,8 +141,13 @@ public class TbCertificatePaymentController extends JeroController<TbCertificate
|
|||||||
@ApiOperation(value="证书缴费表-通过会员缴费id删除", notes="证书缴费表-通过会员缴费id删除")
|
@ApiOperation(value="证书缴费表-通过会员缴费id删除", notes="证书缴费表-通过会员缴费id删除")
|
||||||
@PostMapping(value = "/deleteByTbPaymentId")
|
@PostMapping(value = "/deleteByTbPaymentId")
|
||||||
public Result<?> deleteByTbPaymentId(@RequestBody TbCertificatePayment tbCertificatePayment) {
|
public Result<?> deleteByTbPaymentId(@RequestBody TbCertificatePayment tbCertificatePayment) {
|
||||||
|
|
||||||
LambdaQueryWrapper<TbCertificatePayment> wrapper = new LambdaQueryWrapper<>();
|
LambdaQueryWrapper<TbCertificatePayment> wrapper = new LambdaQueryWrapper<>();
|
||||||
wrapper.eq(TbCertificatePayment::getTbPaymentId, tbCertificatePayment.getTbPaymentId());
|
wrapper.eq(TbCertificatePayment::getTbPaymentId, tbCertificatePayment.getTbPaymentId());
|
||||||
|
TbCertificatePayment certificatePayment = tbCertificatePaymentService.getOne(wrapper);
|
||||||
|
if (certificatePayment != null){
|
||||||
|
tbMemberProjectSubitemService.deleteProject(certificatePayment.getId());
|
||||||
|
}
|
||||||
tbCertificatePaymentService.remove(wrapper);
|
tbCertificatePaymentService.remove(wrapper);
|
||||||
return Result.OK("删除成功!");
|
return Result.OK("删除成功!");
|
||||||
}
|
}
|
||||||
|
|||||||
+3
-1
@@ -47,7 +47,9 @@ public interface ITbMemberProjectSubitemService extends IService<TbMemberProject
|
|||||||
*/
|
*/
|
||||||
void deleteByIds(List<String> ids);
|
void deleteByIds(List<String> ids);
|
||||||
|
|
||||||
/**
|
void deleteProject(String id);
|
||||||
|
|
||||||
|
/**
|
||||||
* 通过id查询
|
* 通过id查询
|
||||||
*
|
*
|
||||||
* @param id
|
* @param id
|
||||||
|
|||||||
+36
-17
@@ -5,29 +5,30 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|||||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.jero.common.exception.JeroBootException;
|
|
||||||
import com.jero.common.service.RolePermissionService;
|
import com.jero.common.service.RolePermissionService;
|
||||||
import com.jero.common.system.vo.LoginUser;
|
import com.jero.common.system.vo.LoginUser;
|
||||||
import com.jero.contract.entity.PayIncomeContractAssociated;
|
import com.jero.contract.entity.PayIncomeContractAssociated;
|
||||||
import com.jero.contract.service.IPayIncomeContractAssociatedService;
|
import com.jero.contract.service.IPayIncomeContractAssociatedService;
|
||||||
import com.jero.contract.service.IPayIncomeContractService;
|
import com.jero.contract.service.IPayIncomeContractService;
|
||||||
import com.jero.member.entity.PayMemberProjectSubitem;
|
import com.jero.mail.entity.PayMailBillProject;
|
||||||
|
import com.jero.mail.service.IPayMailBillProjectService;
|
||||||
|
import com.jero.mail.service.IPayMailBillService;
|
||||||
import com.jero.member.entity.TbMemberProjectSubitem;
|
import com.jero.member.entity.TbMemberProjectSubitem;
|
||||||
import com.jero.member.mapper.TbMemberProjectSubitemMapper;
|
import com.jero.member.mapper.TbMemberProjectSubitemMapper;
|
||||||
import com.jero.member.service.ITbMemberProjectSubitemService;
|
import com.jero.member.service.ITbMemberProjectSubitemService;
|
||||||
import com.jero.pack.entity.PayPackCompanyProject;
|
import com.jero.pack.entity.PayPackCompanyProject;
|
||||||
import com.jero.pack.service.IPayPackCompanyProjectService;
|
import com.jero.pack.service.IPayPackCompanyProjectService;
|
||||||
import com.jero.project.common.PayProjectCommon;
|
import com.jero.payment.entity.PayConfirmPaymentRecord;
|
||||||
|
import com.jero.payment.entity.PayPaymentRecord;
|
||||||
|
import com.jero.payment.service.IPayPaymentRecordService;
|
||||||
|
import com.jero.payment.service.impl.PayConfirmPaymentRecordService;
|
||||||
import com.jero.temporary.service.IPayCompanyManagementTemporaryService;
|
import com.jero.temporary.service.IPayCompanyManagementTemporaryService;
|
||||||
import com.jero.temporary.service.IPayContactsManagementTemporaryService;
|
import com.jero.temporary.service.IPayContactsManagementTemporaryService;
|
||||||
import org.apache.shiro.SecurityUtils;
|
import org.apache.shiro.SecurityUtils;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import java.util.Arrays;
|
|
||||||
import java.util.Collections;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Objects;
|
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
@@ -60,6 +61,15 @@ public class TbMemberProjectSubitemServiceImpl extends ServiceImpl<TbMemberProje
|
|||||||
private ITbMemberProjectSubitemService tbMemberProjectSubitemService;
|
private ITbMemberProjectSubitemService tbMemberProjectSubitemService;
|
||||||
@Resource
|
@Resource
|
||||||
private RolePermissionService rolePermissionService;
|
private RolePermissionService rolePermissionService;
|
||||||
|
@Resource
|
||||||
|
private IPayPaymentRecordService payPaymentRecordService;
|
||||||
|
@Resource
|
||||||
|
private PayConfirmPaymentRecordService payConfirmPaymentRecordService;
|
||||||
|
@Resource
|
||||||
|
private IPayMailBillProjectService payMailBillProjectService;
|
||||||
|
@Resource
|
||||||
|
private IPayMailBillService payMailBillService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 保存
|
* 保存
|
||||||
*/
|
*/
|
||||||
@@ -105,19 +115,28 @@ public class TbMemberProjectSubitemServiceImpl extends ServiceImpl<TbMemberProje
|
|||||||
* @Return
|
* @Return
|
||||||
* @Exception
|
* @Exception
|
||||||
*/
|
*/
|
||||||
private void deleteProject(String id){
|
@Override
|
||||||
TbMemberProjectSubitem tbMemberProjectSubitem = tbMemberProjectSubitemService.getById(id);
|
public void deleteProject(String id){
|
||||||
// 到账!=0 || 开票!=0 || 邮寄!=0
|
//删除到账
|
||||||
if(!Objects.equals(tbMemberProjectSubitem.getInAccount(), PayProjectCommon.IN_ACCOUNT0)
|
LambdaQueryWrapper<PayPaymentRecord> wrapper1 = new LambdaQueryWrapper<>();
|
||||||
|| !Objects.equals(tbMemberProjectSubitem.getMakeInvoice(),PayProjectCommon.MAKE_INVOICE0)
|
wrapper1.eq(PayPaymentRecord::getProjectId,id);
|
||||||
|| !Objects.equals(tbMemberProjectSubitem.getMail(),PayProjectCommon.MAIL0)){
|
payPaymentRecordService.remove(wrapper1);
|
||||||
throw new JeroBootException("项目已有到账信息不可删除!");
|
//删除确认收入
|
||||||
}
|
LambdaQueryWrapper<PayConfirmPaymentRecord> wrapper = new LambdaQueryWrapper<>();
|
||||||
// 校验项目是否已关联合同 抛异常
|
wrapper.eq(PayConfirmPaymentRecord::getProjectId,id);
|
||||||
payIncomeContractService.getPayIncomeContractAssociated(Collections.singletonList(tbMemberProjectSubitem.getId()));
|
payConfirmPaymentRecordService.remove(wrapper);
|
||||||
|
//删除开票
|
||||||
|
LambdaQueryWrapper<PayMailBillProject> wrapper2 = new LambdaQueryWrapper<>();
|
||||||
|
wrapper2.eq(PayMailBillProject::getProjectId,id);
|
||||||
|
payMailBillProjectService.remove(wrapper2);
|
||||||
|
|
||||||
|
// 删除合同关联
|
||||||
|
LambdaQueryWrapper<PayIncomeContractAssociated> queryPayIncomeContractAssociated = new LambdaQueryWrapper<>();
|
||||||
|
queryPayIncomeContractAssociated.eq(PayIncomeContractAssociated::getProjectId,id);
|
||||||
|
payIncomeContractAssociatedService.remove(queryPayIncomeContractAssociated);
|
||||||
// 如果已打报,同步删除打包关联
|
// 如果已打报,同步删除打包关联
|
||||||
LambdaUpdateWrapper<PayPackCompanyProject> update = new LambdaUpdateWrapper<>();
|
LambdaUpdateWrapper<PayPackCompanyProject> update = new LambdaUpdateWrapper<>();
|
||||||
update.eq(PayPackCompanyProject::getProjectId,tbMemberProjectSubitem.getId());
|
update.eq(PayPackCompanyProject::getProjectId,id);
|
||||||
payPackCompanyProjectService.remove(update);
|
payPackCompanyProjectService.remove(update);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user