打包管理
This commit is contained in:
@@ -0,0 +1,40 @@
|
||||
package com.jero.common.common;
|
||||
|
||||
public class ProjectCommon {
|
||||
/**
|
||||
* 打包(1:是,0:否)
|
||||
*/
|
||||
public final static Integer PACKAGING0 = 0;
|
||||
/**
|
||||
* 打包(1:是,0:否)
|
||||
*/
|
||||
public final static Integer PACKAGING1 = 1;
|
||||
/**
|
||||
* 项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目,5:标协会员项目)
|
||||
*/
|
||||
public final static String PROJECT_TYPE1 = "1";
|
||||
/**
|
||||
* 项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目,5:标协会员项目)
|
||||
*/
|
||||
public final static String PROJECT_TYPE2 = "2";
|
||||
/**
|
||||
* 项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目,5:标协会员项目)
|
||||
*/
|
||||
public final static String PROJECT_TYPE3 = "3";
|
||||
/**
|
||||
* 项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目,5:标协会员项目)
|
||||
*/
|
||||
public final static String PROJECT_TYPE4 = "4";
|
||||
/**
|
||||
* 项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目,5:标协会员项目)
|
||||
*/
|
||||
public final static String PROJECT_TYPE5 = "5";
|
||||
/**
|
||||
* 来源(1:收入合同,2:打包管理)
|
||||
*/
|
||||
public final static Integer COME1 = 1;
|
||||
/**
|
||||
* 来源(1:收入合同,2:打包管理)
|
||||
*/
|
||||
public final static Integer COME2 = 2;
|
||||
}
|
||||
+16
@@ -0,0 +1,16 @@
|
||||
package com.jero.common.service;
|
||||
|
||||
public interface ProjectPackService {
|
||||
/**
|
||||
* @Description 更新项目状态
|
||||
* @Author lqt
|
||||
* @Date 2021/9/12
|
||||
* @Param projectId 项目id
|
||||
* @Param projectType 项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目,5:标协会员项目)
|
||||
* @Param packStatus 打包(1:是,0:否)
|
||||
* @Param packId 打包id
|
||||
* @Return
|
||||
* @Exception
|
||||
*/
|
||||
void updateProjectStatus(String projectId,String projectType,String packStatus,String packId);
|
||||
}
|
||||
+3
@@ -6,6 +6,7 @@ import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.common.service.ProjectDetailService;
|
||||
import com.jero.mail.entity.PayMailBill;
|
||||
import com.jero.mail.service.IPayMailBillService;
|
||||
import com.jero.pack.common.PackCommon;
|
||||
import com.jero.payment.entity.PayPaymentRecord;
|
||||
import com.jero.payment.service.IPayPaymentRecordService;
|
||||
import com.jero.temporary.entity.PayCompanyManagementTemporary;
|
||||
@@ -17,6 +18,8 @@ import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
|
||||
@Service
|
||||
public class ProjectDetailServiceImpl implements ProjectDetailService {
|
||||
|
||||
|
||||
+148
@@ -0,0 +1,148 @@
|
||||
package com.jero.common.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.common.service.ProjectPackService;
|
||||
import com.jero.common.system.vo.LoginUser;
|
||||
import com.jero.meeting.entity.PayMeetingSituation;
|
||||
import com.jero.meeting.service.IPayMeetingSituationService;
|
||||
import com.jero.member.entity.PayMemberProjectSubitem;
|
||||
import com.jero.member.entity.TbMemberProjectSubitem;
|
||||
import com.jero.member.service.IPayMemberProjectSubitemService;
|
||||
import com.jero.member.service.ITbMemberProjectSubitemService;
|
||||
import com.jero.pack.common.PackCommon;
|
||||
import com.jero.pack.entity.PayPackCompany;
|
||||
import com.jero.pack.service.IPayPackCompanyService;
|
||||
import com.jero.project.entity.PayCommonProject;
|
||||
import com.jero.project.entity.PayWorkingGroupSubItem;
|
||||
import com.jero.project.service.IPayCommonProjectService;
|
||||
import com.jero.project.service.IPayWorkingGroupSubItemService;
|
||||
import org.apache.shiro.SecurityUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
import java.util.Objects;
|
||||
|
||||
@Service
|
||||
public class ProjectPackServiceImpl implements ProjectPackService {
|
||||
@Autowired
|
||||
private IPayCommonProjectService payCommonProjectService;
|
||||
@Autowired
|
||||
private IPayWorkingGroupSubItemService payWorkingGroupSubItemService;
|
||||
@Resource
|
||||
private IPayMeetingSituationService payMeetingSituationService;
|
||||
@Resource
|
||||
private IPayMemberProjectSubitemService payMemberProjectSubitemService;
|
||||
@Resource
|
||||
private ITbMemberProjectSubitemService tbMemberProjectSubitemService;
|
||||
@Autowired
|
||||
private IPayPackCompanyService payPackCompanyService;
|
||||
|
||||
|
||||
@Override
|
||||
public void updateProjectStatus(String projectId, String projectType, String packStatus,String packId) {
|
||||
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
PayPackCompany payPackCompany = payPackCompanyService.getById(packId);
|
||||
if(Objects.isNull(payPackCompany)){
|
||||
throw new JeroBootException("打包企业不存在!");
|
||||
}
|
||||
switch (projectType){
|
||||
// 普通项目
|
||||
case PackCommon.PROJECT_TYPE1:
|
||||
// 验证项目是否存在
|
||||
PayCommonProject payCommonProjectOld = payCommonProjectService.getById(projectId);
|
||||
if(Objects.isNull(payCommonProjectOld)){
|
||||
throw new JeroBootException("项目不存在!");
|
||||
}
|
||||
// 验证企业是否正确
|
||||
if(!Objects.equals(payCommonProjectOld.getChargeCompanyId(),payPackCompany.getCompanyId())){
|
||||
throw new JeroBootException("企业不匹配!");
|
||||
}
|
||||
LambdaUpdateWrapper<PayCommonProject> payCommonProject = new LambdaUpdateWrapper<>();
|
||||
payCommonProject.eq(PayCommonProject::getId,projectId);
|
||||
payCommonProject.set(PayCommonProject::getPack,packStatus);
|
||||
payCommonProject.set(PayCommonProject::getUpdateBy,sysUser.getUsername());
|
||||
payCommonProject.set(PayCommonProject::getUpdateTime,new Date());
|
||||
payCommonProjectService.update(payCommonProject);
|
||||
break;
|
||||
// 工作组项目
|
||||
case PackCommon.PROJECT_TYPE2:
|
||||
// 验证项目是否存在
|
||||
PayWorkingGroupSubItem payWorkingGroupSubItemOld = payWorkingGroupSubItemService.getById(projectId);
|
||||
if(Objects.isNull(payWorkingGroupSubItemOld)){
|
||||
throw new JeroBootException("项目不存在!");
|
||||
}
|
||||
// 验证企业是否正确
|
||||
if(!Objects.equals(payWorkingGroupSubItemOld.getChargeCompanyId(),payPackCompany.getCompanyId())){
|
||||
throw new JeroBootException("企业不匹配!");
|
||||
}
|
||||
LambdaUpdateWrapper<PayWorkingGroupSubItem> payWorkingGroupSubItem = new LambdaUpdateWrapper<>();
|
||||
payWorkingGroupSubItem.eq(PayWorkingGroupSubItem::getId,projectId);
|
||||
payWorkingGroupSubItem.set(PayWorkingGroupSubItem::getPack,packStatus);
|
||||
payWorkingGroupSubItem.set(PayWorkingGroupSubItem::getUpdateBy,sysUser.getUsername());
|
||||
payWorkingGroupSubItem.set(PayWorkingGroupSubItem::getUpdateTime,new Date());
|
||||
payWorkingGroupSubItemService.update(payWorkingGroupSubItem);
|
||||
break;
|
||||
// 会议项目
|
||||
case PackCommon.PROJECT_TYPE3:
|
||||
// 验证项目是否存在
|
||||
PayMeetingSituation payMeetingSituationOld = payMeetingSituationService.getById(projectId);
|
||||
if(Objects.isNull(payMeetingSituationOld)){
|
||||
throw new JeroBootException("项目不存在!");
|
||||
}
|
||||
// 验证企业是否正确
|
||||
if(!Objects.equals(payMeetingSituationOld.getCompanyId(),payPackCompany.getCompanyId())){
|
||||
throw new JeroBootException("企业不匹配!");
|
||||
}
|
||||
LambdaUpdateWrapper<PayMeetingSituation> payMeetingSituation = new LambdaUpdateWrapper<>();
|
||||
payMeetingSituation.eq(PayMeetingSituation::getId,projectId);
|
||||
payMeetingSituation.set(PayMeetingSituation::getPack,packStatus);
|
||||
payMeetingSituation.set(PayMeetingSituation::getAmountReceivable,new BigDecimal("0.00"));
|
||||
payMeetingSituation.set(PayMeetingSituation::getPaidAmount,new BigDecimal("0.00"));
|
||||
payMeetingSituation.set(PayMeetingSituation::getUpdateBy,sysUser.getUsername());
|
||||
payMeetingSituation.set(PayMeetingSituation::getUpdateTime,new Date());
|
||||
payMeetingSituationService.update(payMeetingSituation);
|
||||
break;
|
||||
// 会员项目
|
||||
case PackCommon.PROJECT_TYPE4:
|
||||
// 验证项目是否存在
|
||||
PayMemberProjectSubitem payMemberProjectSubitemOld = payMemberProjectSubitemService.getById(projectId);
|
||||
if(Objects.isNull(payMemberProjectSubitemOld)){
|
||||
throw new JeroBootException("项目不存在!");
|
||||
}
|
||||
// 验证企业是否正确
|
||||
if(!Objects.equals(payMemberProjectSubitemOld.getCompanyId(),payPackCompany.getCompanyId())){
|
||||
throw new JeroBootException("企业不匹配!");
|
||||
}
|
||||
LambdaUpdateWrapper<PayMemberProjectSubitem> payMemberProjectSubitem = new LambdaUpdateWrapper<>();
|
||||
payMemberProjectSubitem.eq(PayMemberProjectSubitem::getId,projectId);
|
||||
payMemberProjectSubitem.set(PayMemberProjectSubitem::getPack,packStatus);
|
||||
payMemberProjectSubitem.set(PayMemberProjectSubitem::getUpdateBy,sysUser.getUsername());
|
||||
payMemberProjectSubitem.set(PayMemberProjectSubitem::getUpdateTime,new Date());
|
||||
payMemberProjectSubitemService.update(payMemberProjectSubitem);
|
||||
break;
|
||||
// 标协会员
|
||||
case PackCommon.PROJECT_TYPE5:
|
||||
// 验证项目是否存在
|
||||
TbMemberProjectSubitem tbMemberProjectSubitemOld = tbMemberProjectSubitemService.getById(projectId);
|
||||
if(Objects.isNull(tbMemberProjectSubitemOld)){
|
||||
throw new JeroBootException("项目不存在!");
|
||||
}
|
||||
// 验证企业是否正确
|
||||
if(!Objects.equals(tbMemberProjectSubitemOld.getCompanyId(),payPackCompany.getCompanyId())){
|
||||
throw new JeroBootException("企业不匹配!");
|
||||
}
|
||||
LambdaUpdateWrapper<TbMemberProjectSubitem> tbMemberProjectSubitem = new LambdaUpdateWrapper<>();
|
||||
tbMemberProjectSubitem.eq(TbMemberProjectSubitem::getId,projectId);
|
||||
tbMemberProjectSubitem.set(TbMemberProjectSubitem::getPack,packStatus);
|
||||
tbMemberProjectSubitem.set(TbMemberProjectSubitem::getUpdateBy,sysUser.getUsername());
|
||||
tbMemberProjectSubitem.set(TbMemberProjectSubitem::getUpdateTime,new Date());
|
||||
tbMemberProjectSubitemService.update(tbMemberProjectSubitem);
|
||||
break;
|
||||
default:break;
|
||||
}
|
||||
}
|
||||
}
|
||||
+9
@@ -83,4 +83,13 @@ public class PayIncomeContractCommon {
|
||||
*/
|
||||
public final static List<String> LIST_SPENDING_CONTRACT_INSTALLMENT = Arrays.asList("阶段","期应收","期应收时间","期实收","期实收时间");
|
||||
|
||||
/**
|
||||
* 来源(1:收入合同,2:打包管理)
|
||||
*/
|
||||
public final static Integer COME1 = 1;
|
||||
/**
|
||||
* 来源(1:收入合同,2:打包管理)
|
||||
*/
|
||||
public final static Integer COME2 = 2;
|
||||
|
||||
}
|
||||
|
||||
-1
@@ -99,7 +99,6 @@ public class PayIncomeContractController extends JeroController<PayIncomeContrac
|
||||
if(Objects.equals(chargeStatus,PayIncomeContractCommon.CHARGE_STATUS0)){
|
||||
chargeStatus = "";
|
||||
}
|
||||
// todo 缺少会议,会员项目,标协会员
|
||||
Page<PayIncomeContract> page = new Page<>(pageNo, pageSize);
|
||||
IPage<PayIncomeContract> pageList = payIncomeContractService.queryPageList(page, payIncomeContract,chargeStatus,projectName,startTime,endTime);
|
||||
return Result.OK(pageList);
|
||||
|
||||
+1
@@ -2,6 +2,7 @@ package com.jero.contract.entity;
|
||||
|
||||
import java.io.Serializable;
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
|
||||
-1
@@ -38,6 +38,5 @@ public interface PayIncomeContractMapper extends BaseMapper<PayIncomeContract> {
|
||||
* @Return
|
||||
* @Exception
|
||||
*/
|
||||
// todo 缺少会议,会员项目数据
|
||||
List<ProjectOutput> getAssociated(@Param("contractId") String contractId);
|
||||
}
|
||||
|
||||
+68
-5
@@ -47,11 +47,23 @@
|
||||
LEFT JOIN pay_income_contract_associated pica ON pica.contract_id = pic.id
|
||||
LEFT JOIN
|
||||
(
|
||||
select id,charge_project AS projectName from pay_common_project
|
||||
union all
|
||||
select pwgs.id,pwg.working_group_project AS projectName from pay_working_group_subitem pwgs
|
||||
left join pay_working_group pwg ON pwg.id = pwgs.working_group_id
|
||||
WHERE pwg.working_group_project is not null and pwg.working_group_project!=''
|
||||
SELECT id,charge_project AS projectName FROM pay_common_project
|
||||
UNION ALL
|
||||
SELECT pwgs.id,pwg.working_group_project AS projectName FROM pay_working_group_subitem pwgs
|
||||
LEFT JOIN pay_working_group pwg ON pwg.id = pwgs.working_group_id
|
||||
WHERE pwg.working_group_project IS NOT NULL AND pwg.working_group_project != ''
|
||||
UNION ALL
|
||||
SELECT sit.id,meeting.meeting_name AS projectName FROM pay_meeting meeting
|
||||
INNER JOIN pay_meeting_situation sit ON meeting.id = sit.meeting_id
|
||||
WHERE meeting.meeting_name IS NOT NULL AND meeting.meeting_name != ''
|
||||
UNION ALL
|
||||
SELECT msub.id,pmp.project_name AS projectName FROM pay_member_project pmp
|
||||
INNER JOIN pay_member_project_subitem msub ON pmp.id = msub.project_id
|
||||
WHERE pmp.project_name IS NOT NULL AND pmp.project_name != ''
|
||||
UNION ALL
|
||||
SELECT tmsub.id,tmember.project_name AS projectName FROM tb_member_project tmember
|
||||
INNER JOIN tb_member_project_subitem tmsub ON tmember.id=tmsub.project_id
|
||||
where tmember.project_name IS NOT NULL AND tmember.project_name != ''
|
||||
) project ON project.id = pica.project_id
|
||||
GROUP BY pic.id
|
||||
) aa
|
||||
@@ -116,6 +128,57 @@
|
||||
JOIN pay_working_group_subitem pwgs ON pica.project_id = pwgs.id
|
||||
LEFT JOIN pay_working_group pwg ON pwgs.working_group_id = pwg.id
|
||||
WHERE pica.contract_id = #{contractId}
|
||||
UNION ALL
|
||||
SELECT
|
||||
pica.id AS id,
|
||||
pica.contract_id AS contractId,
|
||||
sit.id AS projectId,
|
||||
'3' AS projectType,
|
||||
meeting.meeting_name AS chargeProject,
|
||||
sit.charge_use AS chargeUse,
|
||||
sit.company_name AS chargeCompanyName,
|
||||
sit.amount_receivable AS receivableAmount,
|
||||
sit.paid_amount AS paidAmount,
|
||||
meeting.director_name AS principalName,
|
||||
pica.create_time AS createTime
|
||||
FROM pay_income_contract_associated pica
|
||||
JOIN pay_meeting_situation sit ON pica.project_id = sit.id
|
||||
LEFT JOIN pay_meeting meeting ON meeting.id = sit.meeting_id
|
||||
WHERE pica.contract_id = #{contractId}
|
||||
UNION ALL
|
||||
SELECT
|
||||
pica.id AS id,
|
||||
pica.contract_id AS contractId,
|
||||
msub.id AS projectId,
|
||||
'4' AS projectType,
|
||||
pmp.project_name AS chargeProject,
|
||||
msub.charge_use AS chargeUse,
|
||||
msub.company_name AS chargeCompanyName,
|
||||
msub.amount_receivable AS receivableAmount,
|
||||
msub.paid_amount AS paidAmount,
|
||||
pmp.director_name AS principalName,
|
||||
pica.create_time AS createTime
|
||||
FROM pay_income_contract_associated pica
|
||||
JOIN pay_member_project_subitem msub ON pica.project_id = msub.id
|
||||
LEFT JOIN pay_member_project pmp ON pmp.id=msub.project_id
|
||||
WHERE pica.contract_id = #{contractId}
|
||||
UNION ALL
|
||||
SELECT
|
||||
pica.id AS id,
|
||||
pica.contract_id AS contractId,
|
||||
tmsub.id AS projectId,
|
||||
'5' AS projectType,
|
||||
tmember.project_name AS chargeProject,
|
||||
tmsub.charge_use AS chargeUse,
|
||||
tmsub.company_name AS chargeCompanyName,
|
||||
tmsub.amount_receivable AS receivableAmount,
|
||||
tmsub.paid_amount AS paidAmount,
|
||||
tmember.director_name AS principalName,
|
||||
pica.create_time AS createTime
|
||||
FROM pay_income_contract_associated pica
|
||||
JOIN tb_member_project_subitem tmsub ON pica.project_id = tmsub.id
|
||||
LEFT JOIN tb_member_project tmember ON tmember.id=tmsub.project_id
|
||||
WHERE pica.contract_id = #{contractId}
|
||||
) a
|
||||
ORDER BY createTime,projectId DESC
|
||||
</select>
|
||||
|
||||
+103
-12
@@ -6,6 +6,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.exception.JeroBootException;
|
||||
import com.jero.common.service.ProjectPackService;
|
||||
import com.jero.common.system.vo.LoginUser;
|
||||
import com.jero.common.util.ValidUtil;
|
||||
import com.jero.contract.common.PayIncomeContractCommon;
|
||||
@@ -22,6 +23,10 @@ import com.jero.contract.vo.PayIncomeContractInput;
|
||||
import com.jero.contract.vo.ProjectOutput;
|
||||
import com.jero.modules.system.entity.SysUser;
|
||||
import com.jero.modules.system.service.ISysUserService;
|
||||
import com.jero.pack.entity.PayPackCompany;
|
||||
import com.jero.pack.entity.PayPackCompanyProject;
|
||||
import com.jero.pack.service.IPayPackCompanyProjectService;
|
||||
import com.jero.pack.service.IPayPackCompanyService;
|
||||
import com.jero.project.common.PayProjectCommon;
|
||||
import com.jero.project.entity.PayCommonProject;
|
||||
import com.jero.project.entity.PayWorkingGroup;
|
||||
@@ -42,6 +47,7 @@ import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
@@ -80,6 +86,12 @@ public class PayIncomeContractServiceImpl extends ServiceImpl<PayIncomeContractM
|
||||
private IPayWorkingGroupService payWorkingGroupService;
|
||||
@Autowired
|
||||
private IPayWorkingGroupSubItemService payWorkingGroupSubItemService;
|
||||
@Autowired
|
||||
private ProjectPackService projectPackService;
|
||||
@Autowired
|
||||
private IPayPackCompanyService payPackCompanyService;
|
||||
@Autowired
|
||||
private IPayPackCompanyProjectService payPackCompanyProjectService;
|
||||
|
||||
@Override
|
||||
public IPage<PayIncomeContract> queryPageList(Page<PayIncomeContract> page, PayIncomeContract payIncomeContract, String chargeStatus,String projectName, String startTime, String endTime) {
|
||||
@@ -152,6 +164,23 @@ public class PayIncomeContractServiceImpl extends ServiceImpl<PayIncomeContractM
|
||||
if(!StringUtils.isBlank(msgPayIncomeContractInstallment)){
|
||||
throw new JeroBootException(msgPayIncomeContractInstallment.toString());
|
||||
}
|
||||
// 选择了打包,创建打包企业
|
||||
if(Objects.equals(payIncomeContract.getPack(),PayIncomeContractCommon.PACK1)){
|
||||
LambdaQueryWrapper<PayPackCompany> queryPayPackCompany = new LambdaQueryWrapper<>();
|
||||
queryPayPackCompany.eq(PayPackCompany::getCompanyId,payIncomeContract.getSignedCompanyId());
|
||||
queryPayPackCompany.eq(PayPackCompany::getPackYear,payIncomeContract.getPackYear());
|
||||
List<PayPackCompany> listPayPackCompany = payPackCompanyService.list(queryPayPackCompany);
|
||||
//不存在打包企业 添加打包企业
|
||||
if(CollectionUtils.isEmpty(listPayPackCompany)){
|
||||
PayPackCompany payPackCompanyData = new PayPackCompany();
|
||||
payPackCompanyData.setCompanyId(payIncomeContract.getSignedCompanyId());
|
||||
payPackCompanyData.setCompanyContactId(payIncomeContract.getSignedCompanyId());
|
||||
payPackCompanyData.setPackYear(payIncomeContract.getPackYear());
|
||||
payPackCompanyData.setPackContactId(payIncomeContract.getSignedContactsId());
|
||||
payPackCompanyService.addPayPackCompany(payPackCompanyData);
|
||||
}
|
||||
}
|
||||
|
||||
return payIncomeContract;
|
||||
}
|
||||
|
||||
@@ -265,7 +294,6 @@ public class PayIncomeContractServiceImpl extends ServiceImpl<PayIncomeContractM
|
||||
if(Objects.isNull(payIncomeContract)){
|
||||
throw new JeroBootException("合同不存在!");
|
||||
}
|
||||
|
||||
// 查看项目类型
|
||||
switch (String.valueOf(p.getProjectType())){
|
||||
case PayIncomeContractCommon.PROJECT_TYPE1:
|
||||
@@ -281,8 +309,8 @@ public class PayIncomeContractServiceImpl extends ServiceImpl<PayIncomeContractM
|
||||
}
|
||||
// 验证项目是否已被关联
|
||||
getIncomeContractAssociated(p.getContractId(),p.getProjectId());
|
||||
// 合同选择打包,运行年份不是打包企业,添加打包企业
|
||||
if(Objects.equals(payIncomeContract.getPack(),PayIncomeContractCommon.PACK1)){
|
||||
// 合同选择打包 && 企业没有打包,添加打包企业
|
||||
if(Objects.equals(payIncomeContract.getPack(),PayIncomeContractCommon.PACK1) && !Objects.equals(payCommonProject.getPack(),PayIncomeContractCommon.PACK1)){
|
||||
LambdaUpdateWrapper<PayCommonProject> updatePayCommonProject = new LambdaUpdateWrapper<>();
|
||||
updatePayCommonProject.eq(PayCommonProject::getId,p.getProjectId());
|
||||
if(!StringUtils.isBlank(payCommonProject.getContractNum())){
|
||||
@@ -292,7 +320,11 @@ public class PayIncomeContractServiceImpl extends ServiceImpl<PayIncomeContractM
|
||||
updatePayCommonProject.set(PayCommonProject::getUpdateBy,sysUser.getUsername());
|
||||
updatePayCommonProject.set(PayCommonProject::getUpdateTime,new Date());
|
||||
payCommonProjectService.update(updatePayCommonProject);
|
||||
// todo 添加打包企业
|
||||
// 添加打包企业
|
||||
// 合同选择了打包,查看打包年份&&打包企业是否存在
|
||||
if(Objects.equals(payIncomeContract.getPack(),PayIncomeContractCommon.PACK1)){
|
||||
setPack(payCommonProject.getChargeCompanyId(),payCommonProject.getContactsId(),payIncomeContract.getPackYear(),payCommonProject.getId(),payIncomeContract.getPack(),payCommonProject.getReceivableAmount(),payCommonProject.getPaidAmount());
|
||||
}
|
||||
}
|
||||
projectOutput.setProjectId(payCommonProject.getId());
|
||||
projectOutput.setProjectType(PayIncomeContractCommon.PROJECT_TYPE1);
|
||||
@@ -334,7 +366,11 @@ public class PayIncomeContractServiceImpl extends ServiceImpl<PayIncomeContractM
|
||||
updatePayWorkingGroupSubItem.set(PayWorkingGroupSubItem::getPack,PayIncomeContractCommon.PACK1);
|
||||
updatePayWorkingGroupSubItem.eq(PayWorkingGroupSubItem::getId,listPayWorkingGroupSubItem.get(0).getId());
|
||||
payWorkingGroupSubItemService.update(updatePayWorkingGroupSubItem);
|
||||
// todo 添加打包企业
|
||||
// 添加打包企业
|
||||
// 合同选择了打包,查看打包年份&&打包企业是否存在
|
||||
if(Objects.equals(payIncomeContract.getPack(),PayIncomeContractCommon.PACK1)){
|
||||
setPack(listPayWorkingGroupSubItem.get(0).getChargeCompanyId(),listPayWorkingGroupSubItem.get(0).getContactsIdOne(),payIncomeContract.getPackYear(),listPayWorkingGroupSubItem.get(0).getId(),payIncomeContract.getPack(),listPayWorkingGroupSubItem.get(0).getReceivableAmount(),listPayWorkingGroupSubItem.get(0).getPaidAmount());
|
||||
}
|
||||
}
|
||||
// 更新项目id
|
||||
p.setProjectId(listPayWorkingGroupSubItem.get(0).getId());
|
||||
@@ -367,6 +403,54 @@ public class PayIncomeContractServiceImpl extends ServiceImpl<PayIncomeContractM
|
||||
return listProjectOutput;
|
||||
}
|
||||
/**
|
||||
* @Description 添加打包企业
|
||||
* @Author lqt
|
||||
* @Date 2021/9/12
|
||||
* @Param
|
||||
* @Return
|
||||
* @Exception
|
||||
*/
|
||||
private void setPack(String companyId, String contactsId, String packYear, String projectId, Integer pack, BigDecimal receivableAmount,BigDecimal paidAmount){
|
||||
// 合同选择了打包,查看打包年份&&打包企业是否存在
|
||||
if(Objects.equals(pack,PayIncomeContractCommon.PACK1)){
|
||||
LambdaQueryWrapper<PayPackCompany> queryPayPackCompany = new LambdaQueryWrapper<>();
|
||||
queryPayPackCompany.eq(PayPackCompany::getCompanyId,companyId);
|
||||
queryPayPackCompany.eq(PayPackCompany::getPackYear,packYear);
|
||||
List<PayPackCompany> listPayPackCompany = payPackCompanyService.list(queryPayPackCompany);
|
||||
PayPackCompany payPackCompany = new PayPackCompany();
|
||||
//不存在打包企业 添加打包企业
|
||||
if(CollectionUtils.isEmpty(listPayPackCompany)){
|
||||
PayPackCompany payPackCompanyData = new PayPackCompany();
|
||||
payPackCompanyData.setCompanyId(companyId);
|
||||
payPackCompanyData.setCompanyContactId(contactsId);
|
||||
payPackCompanyData.setPackYear(packYear);
|
||||
payPackCompanyData.setPackContactId(contactsId);
|
||||
payPackCompanyService.addPayPackCompany(payPackCompanyData);
|
||||
LambdaQueryWrapper<PayPackCompany> queryPayPackCompanyNew = new LambdaQueryWrapper<>();
|
||||
queryPayPackCompanyNew.eq(PayPackCompany::getCompanyId,companyId);
|
||||
queryPayPackCompanyNew.eq(PayPackCompany::getPackYear,packYear);
|
||||
List<PayPackCompany> listPayPackCompanyNew = payPackCompanyService.list(queryPayPackCompanyNew);
|
||||
payPackCompany = listPayPackCompanyNew.get(0);
|
||||
}else{
|
||||
payPackCompany = listPayPackCompany.get(0);
|
||||
}
|
||||
// 更新打包实收金额
|
||||
LambdaUpdateWrapper<PayPackCompany> updatePayPackCompany = new LambdaUpdateWrapper<>();
|
||||
updatePayPackCompany.eq(PayPackCompany::getPackChargeTotal,payPackCompany.getPackChargeTotal().add(receivableAmount));
|
||||
updatePayPackCompany.eq(PayPackCompany::getReceiptExpense,payPackCompany.getReceiptExpense().add(paidAmount));
|
||||
updatePayPackCompany.set(PayPackCompany::getId,payPackCompany.getId());
|
||||
// todo 更新开票金额与未开票金额
|
||||
payPackCompanyService.update(updatePayPackCompany);
|
||||
// 添加打包企业成员
|
||||
PayPackCompanyProject payPackCompanyProject = new PayPackCompanyProject();
|
||||
payPackCompanyProject.setPackId(payPackCompany.getId());
|
||||
payPackCompanyProject.setProjectId(projectId);
|
||||
payPackCompanyProject.setCome(PayIncomeContractCommon.COME1);
|
||||
payPackCompanyProject.setProjectId(PayIncomeContractCommon.PROJECT_TYPE1);
|
||||
payPackCompanyProjectService.save(payPackCompanyProject);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* @Description 验证项目是否被合同关联
|
||||
* @Author lqt
|
||||
* @Date 2021/9/6
|
||||
@@ -386,7 +470,6 @@ public class PayIncomeContractServiceImpl extends ServiceImpl<PayIncomeContractM
|
||||
}
|
||||
throw new JeroBootException("项目已被其他合同关联!");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -418,12 +501,20 @@ public class PayIncomeContractServiceImpl extends ServiceImpl<PayIncomeContractM
|
||||
}
|
||||
// todo 缺少查询项目是否为打包企业,是:保持不变,不是:取消打包 将关联项目取消打包
|
||||
if(Objects.equals(payIncomeContract.getPack(),PayIncomeContractCommon.PACK1) ){
|
||||
LambdaUpdateWrapper<PayCommonProject> updatePayCommonProject = new LambdaUpdateWrapper<>();
|
||||
updatePayCommonProject.set(PayCommonProject::getUpdateBy,sysUser.getUsername());
|
||||
updatePayCommonProject.set(PayCommonProject::getUpdateTime,new Date());
|
||||
updatePayCommonProject.set(PayCommonProject::getPack,PayIncomeContractCommon.PACK0);
|
||||
updatePayCommonProject.eq(PayCommonProject::getId,payIncomeContractAssociated.getProjectId());
|
||||
payCommonProjectService.update(updatePayCommonProject);
|
||||
LambdaQueryWrapper<PayPackCompanyProject> queryPayPackCompanyProject = new LambdaQueryWrapper<>();
|
||||
queryPayPackCompanyProject.eq(PayPackCompanyProject::getProjectId,payCommonProject.getId());
|
||||
List<PayPackCompanyProject> listPayPackCompanyProject = payPackCompanyProjectService.list(queryPayPackCompanyProject);
|
||||
// todo 如果在打包企业中&& 来源为支出合同,取消打包,变更打包企业金额 否则不进行操作
|
||||
if(!CollectionUtils.isEmpty(listPayPackCompanyProject) && Objects.equals(listPayPackCompanyProject.get(0).getCome(),PayIncomeContractCommon.COME1)){
|
||||
payPackCompanyService.update();
|
||||
payPackCompanyProjectService.removeById(listPayPackCompanyProject.get(0).getId());
|
||||
LambdaUpdateWrapper<PayCommonProject> updatePayCommonProject = new LambdaUpdateWrapper<>();
|
||||
updatePayCommonProject.set(PayCommonProject::getUpdateBy,sysUser.getUsername());
|
||||
updatePayCommonProject.set(PayCommonProject::getUpdateTime,new Date());
|
||||
updatePayCommonProject.set(PayCommonProject::getPack,PayIncomeContractCommon.PACK0);
|
||||
updatePayCommonProject.eq(PayCommonProject::getId,payIncomeContractAssociated.getProjectId());
|
||||
payCommonProjectService.update(updatePayCommonProject);
|
||||
}
|
||||
}
|
||||
break;
|
||||
case PayIncomeContractCommon.PROJECT_TYPE2:
|
||||
|
||||
@@ -10,7 +10,26 @@ public class PackCommon {
|
||||
* 打包(1:是,0:否)
|
||||
*/
|
||||
public final static Integer PACKAGING1 = 1;
|
||||
|
||||
/**
|
||||
* 项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目,5:标协会员项目)
|
||||
*/
|
||||
public final static String PROJECT_TYPE1 = "1";
|
||||
/**
|
||||
* 项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目,5:标协会员项目)
|
||||
*/
|
||||
public final static String PROJECT_TYPE2 = "2";
|
||||
/**
|
||||
* 项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目,5:标协会员项目)
|
||||
*/
|
||||
public final static String PROJECT_TYPE3 = "3";
|
||||
/**
|
||||
* 项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目,5:标协会员项目)
|
||||
*/
|
||||
public final static String PROJECT_TYPE4 = "4";
|
||||
/**
|
||||
* 项目类型(1:普通项目,2:工作组项目,3:会议项目,4:会员项目,5:标协会员项目)
|
||||
*/
|
||||
public final static String PROJECT_TYPE5 = "5";
|
||||
/**
|
||||
* 来源(1:收入合同,2:打包管理)
|
||||
*/
|
||||
|
||||
+24
-26
@@ -14,11 +14,16 @@ import com.jero.common.api.vo.Result;
|
||||
import com.jero.common.aspect.annotation.AutoLog;
|
||||
import com.jero.common.system.base.controller.JeroController;
|
||||
import com.jero.common.system.query.QueryGenerator;
|
||||
import com.jero.common.util.PasswordUtil;
|
||||
import com.jero.common.util.ValidUtil;
|
||||
import com.jero.company.entity.PayContactsManagement;
|
||||
import com.jero.company.service.IPayContactsManagementService;
|
||||
import com.jero.pack.entity.PayPackCompany;
|
||||
import com.jero.pack.entity.PayPackCompanyProject;
|
||||
import com.jero.pack.service.IPayPackCompanyProjectService;
|
||||
import com.jero.pack.service.IPayPackCompanyService;
|
||||
import com.jero.temporary.entity.PayContactsManagementTemporary;
|
||||
import com.jero.temporary.service.IPayContactsManagementTemporaryService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.collections.CollectionUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
@@ -43,6 +48,8 @@ public class PayPackCompanyController extends JeroController<PayPackCompany, IPa
|
||||
private IPayPackCompanyService payPackCompanyService;
|
||||
@Autowired
|
||||
private IPayPackCompanyProjectService payPackCompanyProjectService;
|
||||
@Autowired
|
||||
private IPayContactsManagementTemporaryService payContactsManagementTemporaryService;
|
||||
|
||||
/**
|
||||
* 分页列表查询
|
||||
@@ -63,6 +70,12 @@ public class PayPackCompanyController extends JeroController<PayPackCompany, IPa
|
||||
QueryWrapper<PayPackCompany> queryWrapper = QueryGenerator.initQueryWrapper(payPackCompany, req.getParameterMap());
|
||||
Page<PayPackCompany> page = new Page<PayPackCompany>(pageNo, pageSize);
|
||||
IPage<PayPackCompany> pageList = payPackCompanyService.page(page, queryWrapper);
|
||||
if(!CollectionUtils.isEmpty(pageList.getRecords())){
|
||||
List<PayPackCompany> list = pageList.getRecords();
|
||||
list.forEach(p->{
|
||||
|
||||
});
|
||||
}
|
||||
return Result.OK(pageList);
|
||||
}
|
||||
|
||||
@@ -80,20 +93,8 @@ public class PayPackCompanyController extends JeroController<PayPackCompany, IPa
|
||||
if(!StringUtils.isBlank(msg)){
|
||||
return Result.error(msg.toString());
|
||||
}
|
||||
try {
|
||||
LambdaQueryWrapper<PayPackCompany> query = new LambdaQueryWrapper<>();
|
||||
query.eq(PayPackCompany::getCompanyId,payPackCompany.getCompanyId());
|
||||
query.eq(PayPackCompany::getPackYear,payPackCompany.getPackYear());
|
||||
PayPackCompany payPackCompanyNew = payPackCompanyService.getOne(query);
|
||||
if(!Objects.isNull(payPackCompanyNew)){
|
||||
return Result.error("该年份下已存在此打包企业!");
|
||||
}
|
||||
}catch (Exception e){
|
||||
log.error("",e);
|
||||
return Result.error("该年份下已存在此打包企业!");
|
||||
}
|
||||
|
||||
payPackCompanyService.save(payPackCompany);
|
||||
payPackCompanyService.addPayPackCompany(payPackCompany);
|
||||
return Result.OK("添加成功!");
|
||||
}
|
||||
|
||||
@@ -111,19 +112,7 @@ public class PayPackCompanyController extends JeroController<PayPackCompany, IPa
|
||||
if(!StringUtils.isBlank(msg)){
|
||||
return Result.error(msg.toString());
|
||||
}
|
||||
try {
|
||||
LambdaQueryWrapper<PayPackCompany> query = new LambdaQueryWrapper<>();
|
||||
query.eq(PayPackCompany::getCompanyId,payPackCompany.getCompanyId());
|
||||
query.eq(PayPackCompany::getPackYear,payPackCompany.getPackYear());
|
||||
PayPackCompany payPackCompanyNew = payPackCompanyService.getOne(query);
|
||||
if(!Objects.isNull(payPackCompanyNew) && !Objects.equals(payPackCompany.getId(),payPackCompanyNew.getId())){
|
||||
return Result.error("该年份下已存在此打包企业!");
|
||||
}
|
||||
}catch (Exception e){
|
||||
log.error("",e);
|
||||
return Result.error("该年份下已存在此打包企业!");
|
||||
}
|
||||
payPackCompanyService.updateById(payPackCompany);
|
||||
payPackCompanyService.editPayPackCompany(payPackCompany);
|
||||
return Result.OK("编辑成功!");
|
||||
}
|
||||
|
||||
@@ -196,6 +185,15 @@ public class PayPackCompanyController extends JeroController<PayPackCompany, IPa
|
||||
if(payPackCompany==null) {
|
||||
return Result.error("未找到对应数据");
|
||||
}
|
||||
PayContactsManagementTemporary payContactsManagementTemporary = payContactsManagementTemporaryService.getById(payPackCompany.getCompanyContactTemporaryId());
|
||||
if(!Objects.isNull(payContactsManagementTemporary)){
|
||||
if(!StringUtils.isBlank(payContactsManagementTemporary.getPhone())){
|
||||
payPackCompany.setPhone(PasswordUtil.decrypt(payContactsManagementTemporary.getPhone()));
|
||||
}
|
||||
if(!StringUtils.isBlank(payContactsManagementTemporary.getEmail())){
|
||||
payPackCompany.setEmail(PasswordUtil.decrypt(payContactsManagementTemporary.getEmail()));
|
||||
}
|
||||
}
|
||||
return Result.OK(payPackCompany);
|
||||
}
|
||||
|
||||
|
||||
+6
-25
@@ -79,7 +79,7 @@ public class PayPackCompanyProjectController extends JeroController<PayPackCompa
|
||||
@ApiOperation(value="打包项目维护-列表查询", notes="打包项目维护-列表查询")
|
||||
@GetMapping(value = "/listAll")
|
||||
public Result<?> queryListAll(PayPackCompanyProjectInput input) {
|
||||
if(Objects.isNull(input.getPack())){
|
||||
if(Objects.isNull(input.getPackId())){
|
||||
return Result.error("打包id不能为空");
|
||||
}
|
||||
PayPackCompany payPackCompany = payPackCompanyService.getById(input.getPackId());
|
||||
@@ -110,6 +110,7 @@ public class PayPackCompanyProjectController extends JeroController<PayPackCompa
|
||||
if(Objects.isNull(payPackCompany)){
|
||||
return Result.error("打包企业不存在");
|
||||
}
|
||||
input.setPackId(input.getPackId());
|
||||
input.setCompanyId(payPackCompany.getCompanyId());
|
||||
input.setPack(PackCommon.PACKAGING0);
|
||||
List<PayCommonProject> list = payPackCompanyProjectService.queryPackListAll(input);
|
||||
@@ -142,15 +143,8 @@ public class PayPackCompanyProjectController extends JeroController<PayPackCompa
|
||||
if(StringUtils.isBlank(payPackCompanyProject.getId())){
|
||||
return Result.error("关联id不能为空!");
|
||||
}
|
||||
PayPackCompanyProject payPackCompanyProjectNew = payPackCompanyProjectService.getById(payPackCompanyProject.getId());
|
||||
if(Objects.isNull(payPackCompanyProjectNew)){
|
||||
return Result.error("不存在打包项目!");
|
||||
}
|
||||
if(Objects.equals(payPackCompanyProjectNew.getCome(),PackCommon.COME2)){
|
||||
return Result.error("此项目已在合同处创建关联,请先从合同处取消关联!");
|
||||
}
|
||||
payPackCompanyProjectService.removeById(payPackCompanyProject.getId());
|
||||
return Result.OK("添加成功!");
|
||||
payPackCompanyProjectService.removePayPackCompanyProject(payPackCompanyProject);
|
||||
return Result.OK("取消打包成功!");
|
||||
}
|
||||
/**
|
||||
* 批量取消打包
|
||||
@@ -165,21 +159,8 @@ public class PayPackCompanyProjectController extends JeroController<PayPackCompa
|
||||
if(StringUtils.isBlank(payPackCompanyProject.getPackProjectIds())){
|
||||
return Result.error("关联id不能为空!");
|
||||
}
|
||||
String[] s = payPackCompanyProject.getPackProjectIds().split(",");
|
||||
for (String s1 : s) {
|
||||
if(StringUtils.isBlank(s1)){
|
||||
return Result.error("id不能为空!");
|
||||
}
|
||||
PayPackCompanyProject payPackCompanyProjectNew = payPackCompanyProjectService.getById(payPackCompanyProject.getId());
|
||||
if(Objects.isNull(payPackCompanyProjectNew)){
|
||||
return Result.error("不存在打包项目!");
|
||||
}
|
||||
if(Objects.equals(payPackCompanyProjectNew.getCome(),PackCommon.COME2)){
|
||||
return Result.error("此项目已在合同处创建关联,请先从合同处取消关联!");
|
||||
}
|
||||
}
|
||||
payPackCompanyProjectService.removeByIds(Arrays.asList(payPackCompanyProject.getPackProjectIds()));
|
||||
return Result.OK("添加成功!");
|
||||
payPackCompanyProjectService.removeBatchPayPackCompanyProject(payPackCompanyProject);
|
||||
return Result.OK("批量取消打包成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -1,7 +1,10 @@
|
||||
package com.jero.pack.entity;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import lombok.Data;
|
||||
@@ -13,6 +16,7 @@ import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import javax.validation.constraints.DecimalMax;
|
||||
import javax.validation.constraints.Size;
|
||||
|
||||
/**
|
||||
@@ -34,11 +38,11 @@ public class PayPackCompany implements Serializable {
|
||||
@ApiModelProperty(value = "id")
|
||||
private java.lang.String id;
|
||||
/**企业id*/
|
||||
@Excel(name = "企业id", width = 15)
|
||||
// @Excel(name = "企业id", width = 15)
|
||||
@ApiModelProperty(value = "企业id")
|
||||
private java.lang.String companyId;
|
||||
/**企业id*/
|
||||
@Excel(name = "企业id", width = 15)
|
||||
// @Excel(name = "企业id", width = 15)
|
||||
@ApiModelProperty(value = "企业id")
|
||||
private java.lang.String companyTemporaryId;
|
||||
/**企业名称*/
|
||||
@@ -46,11 +50,11 @@ public class PayPackCompany implements Serializable {
|
||||
@ApiModelProperty(value = "企业名称")
|
||||
private java.lang.String companyTemporaryName;
|
||||
/**企业联系人id*/
|
||||
@Excel(name = "企业联系人id", width = 15)
|
||||
// @Excel(name = "企业联系人id", width = 15)
|
||||
@ApiModelProperty(value = "企业联系人id")
|
||||
private java.lang.String companyContactId;
|
||||
/**企业联系人id*/
|
||||
@Excel(name = "企业联系人id", width = 15)
|
||||
// @Excel(name = "企业联系人id", width = 15)
|
||||
@ApiModelProperty(value = "企业联系人id")
|
||||
private java.lang.String companyContactTemporaryId;
|
||||
/**企业联系人*/
|
||||
@@ -62,11 +66,11 @@ public class PayPackCompany implements Serializable {
|
||||
@ApiModelProperty(value = "打包年份")
|
||||
private java.lang.String packYear;
|
||||
/**打包联系人id*/
|
||||
@Excel(name = "打包联系人id", width = 15)
|
||||
// @Excel(name = "打包联系人id", width = 15)
|
||||
@ApiModelProperty(value = "打包联系人id")
|
||||
private java.lang.String packContactId;
|
||||
/**打包联系人id*/
|
||||
@Excel(name = "打包联系人id", width = 15)
|
||||
// @Excel(name = "打包联系人id", width = 15)
|
||||
@ApiModelProperty(value = "打包联系人id")
|
||||
private java.lang.String packContactTemporaryId;
|
||||
/**打包联系人*/
|
||||
@@ -76,27 +80,31 @@ public class PayPackCompany implements Serializable {
|
||||
/**打包费用总计*/
|
||||
@Excel(name = "打包费用总计", width = 15)
|
||||
@ApiModelProperty(value = "打包费用总计")
|
||||
private java.lang.Integer packChargeTotal;
|
||||
@DecimalMax(value = "9999999999.99",message = "打包费用总计格式错误")
|
||||
private BigDecimal packChargeTotal;
|
||||
/**打包费用备注*/
|
||||
@Excel(name = "打包费用备注", width = 15)
|
||||
// @Excel(name = "打包费用备注", width = 15)
|
||||
@ApiModelProperty(value = "打包费用备注")
|
||||
private java.lang.String packChargeRemark;
|
||||
/**备注*/
|
||||
@Excel(name = "备注", width = 15)
|
||||
// @Excel(name = "备注", width = 15)
|
||||
@ApiModelProperty(value = "备注")
|
||||
private java.lang.String remark;
|
||||
/**实际到账费用*/
|
||||
@Excel(name = "实际到账费用", width = 15)
|
||||
@ApiModelProperty(value = "实际到账费用")
|
||||
private java.lang.Integer receiptExpense;
|
||||
@DecimalMax(value = "9999999999.99",message = "实际到账费用总计格式错误")
|
||||
private BigDecimal receiptExpense;
|
||||
/**开票金额*/
|
||||
@Excel(name = "开票金额", width = 15)
|
||||
// @Excel(name = "开票金额", width = 15)
|
||||
@ApiModelProperty(value = "开票金额")
|
||||
private java.lang.Integer invoiceAmount;
|
||||
@DecimalMax(value = "9999999999.99",message = "开票金额总计格式错误")
|
||||
private BigDecimal invoiceAmount;
|
||||
/**未开票金额*/
|
||||
@Excel(name = "未开票金额", width = 15)
|
||||
// @Excel(name = "未开票金额", width = 15)
|
||||
@ApiModelProperty(value = "未开票金额")
|
||||
private java.lang.Integer uninvoicedAmount;
|
||||
@DecimalMax(value = "9999999999.99",message = "未开票金额总计格式错误")
|
||||
private BigDecimal uninvoicedAmount;
|
||||
/**创建人*/
|
||||
@ApiModelProperty(value = "创建人")
|
||||
private java.lang.String createBy;
|
||||
@@ -113,4 +121,16 @@ public class PayPackCompany implements Serializable {
|
||||
@DateTimeFormat(pattern="yyyy-MM-dd")
|
||||
@ApiModelProperty(value = "更新日期")
|
||||
private java.util.Date updateTime;
|
||||
/**
|
||||
* 手机号
|
||||
*/
|
||||
@TableField(exist = false)
|
||||
@ApiModelProperty(value = "手机号")
|
||||
private String phone;
|
||||
/**
|
||||
* 邮箱
|
||||
*/
|
||||
@TableField(exist = false)
|
||||
@ApiModelProperty(value = "邮箱")
|
||||
private String email;
|
||||
}
|
||||
|
||||
+45
-41
@@ -4,20 +4,16 @@
|
||||
|
||||
<select id="queryListAll" resultType="com.jero.project.entity.PayCommonProject">
|
||||
select project.*,ppcp.come from pay_pack_company_project ppcp
|
||||
LEFT JOIN pay_payment_record ppr ON ppr.project_id = ppcp.project_id
|
||||
<if test="paymentDate != null and paymentDate != ''">
|
||||
AND DATE_FORMAT(ppr.payment_date,'%Y') = #{paymentDate}
|
||||
</if>
|
||||
LEFT JOIN
|
||||
(
|
||||
<!-- 普通项目-->
|
||||
select c.id,c.charge_project, c.charge_use, c.principal_id,c.principal_name,c.charge_company_temporary_name,c.receivable_amount,c.paid_amount,c.need_invoice,c.pack,c.in_account,c.make_invoice,c.mail,c.create_time,1 as projectType
|
||||
from pay_common_project c
|
||||
<where>
|
||||
<if test="companyId != null amd companyId != ''">
|
||||
<if test="companyId != null and companyId != ''">
|
||||
AND c.charge_company_id = #{companyId}
|
||||
</if>
|
||||
<if test="projectName != null amd projectName != ''">
|
||||
<if test="projectName != null and projectName != ''">
|
||||
AND c.charge_project LIKE CONCAT('%',CONCAT(#{projectName},'%'))
|
||||
</if>
|
||||
<if test="year != null and year != ''">
|
||||
@@ -30,10 +26,10 @@
|
||||
from pay_working_group g
|
||||
inner join pay_working_group_subitem gsub on g.id = gsub.charge_company_id
|
||||
<where>
|
||||
<if test="companyId != null amd companyId != ''">
|
||||
<if test="companyId != null and companyId != ''">
|
||||
AND gsub.charge_company_id = #{companyId}
|
||||
</if>
|
||||
<if test="projectName != null amd projectName != ''">
|
||||
<if test="projectName != null and projectName != ''">
|
||||
AND g.working_group_project LIKE CONCAT('%',CONCAT(#{projectName},'%'))
|
||||
</if>
|
||||
<if test="year != null and year != ''">
|
||||
@@ -46,10 +42,10 @@
|
||||
from pay_meeting meeting
|
||||
inner join pay_meeting_situation sit on meeting.id = sit.meeting_id
|
||||
<where>
|
||||
<if test="companyId != null amd companyId != ''">
|
||||
<if test="companyId != null and companyId != ''">
|
||||
AND sit.company_id = #{companyId}
|
||||
</if>
|
||||
<if test="projectName != null amd projectName != ''">
|
||||
<if test="projectName != null and projectName != ''">
|
||||
AND meeting.meeting_name LIKE CONCAT('%',CONCAT(#{projectName},'%'))
|
||||
</if>
|
||||
<if test="year != null and year != ''">
|
||||
@@ -58,18 +54,18 @@
|
||||
</where>
|
||||
<!-- 会员项目-->
|
||||
UNION ALL
|
||||
select msub.id,member.project_name,msub.charge_use,member.director_id,member.director_name,msub.company_name,msub.amount_receivable,msub.paid_amount,msub.need_invoice,msub.pack,msub.in_account,msub.make_invoice,msub.mail,msub.create_time,4
|
||||
from pay_member_project member
|
||||
inner join pay_member_project_subitem msub on member.id=msub.project_id
|
||||
select msub.id,pmp.project_name,msub.charge_use,pmp.director_id,pmp.director_name,msub.company_name,msub.amount_receivable,msub.paid_amount,msub.need_invoice,msub.pack,msub.in_account,msub.make_invoice,msub.mail,msub.create_time,4
|
||||
from pay_member_project pmp
|
||||
inner join pay_member_project_subitem msub on pmp.id = msub.project_id
|
||||
<where>
|
||||
<if test="companyId != null amd companyId != ''">
|
||||
<if test="companyId != null and companyId != ''">
|
||||
AND msub.company_id = #{companyId}
|
||||
</if>
|
||||
<if test="projectName != null amd projectName != ''">
|
||||
AND member.project_name LIKE CONCAT('%',CONCAT(#{projectName},'%'))
|
||||
<if test="projectName != null and projectName != ''">
|
||||
AND pmp.project_name LIKE CONCAT('%',CONCAT(#{projectName},'%'))
|
||||
</if>
|
||||
<if test="year != null and year != ''">
|
||||
AND member.particular_year = #{year}
|
||||
AND pmp.particular_year = #{year}
|
||||
</if>
|
||||
</where>
|
||||
<!-- 标协会员项目-->
|
||||
@@ -78,31 +74,36 @@
|
||||
from tb_member_project tmember
|
||||
inner join tb_member_project_subitem tmsub on tmember.id=tmsub.project_id
|
||||
<where>
|
||||
<if test="companyId != null amd companyId != ''">
|
||||
<if test="companyId != null and companyId != ''">
|
||||
AND tmsub.company_id = #{companyId}
|
||||
</if>
|
||||
<if test="projectName != null amd projectName != ''">
|
||||
<if test="projectName != null and projectName != ''">
|
||||
AND tmember.project_name LIKE CONCAT('%',CONCAT(#{projectName},'%'))
|
||||
</if>
|
||||
<if test="year != null and year != ''">
|
||||
AND tmember.year = #{year}
|
||||
</if>
|
||||
</where>
|
||||
) project ON project.id = ppr.project_id
|
||||
) project ON project.id = ppcp.project_id
|
||||
LEFT JOIN pay_payment_record ppr ON ppr.project_id = project.id
|
||||
<if test="paymentDate != null and paymentDate != ''">
|
||||
AND DATE_FORMAT(ppr.payment_date,'%Y') = #{paymentDate}
|
||||
</if>
|
||||
GROUP BY ppcp.project_id ORDER BY ppcp.create_time desc
|
||||
</select>
|
||||
<select id="queryPackListAll" resultType="com.jero.project.entity.PayCommonProject">
|
||||
SELECT * FROM (
|
||||
<!-- 普通项目-->
|
||||
select c.id,c.charge_project, c.charge_use, c.principal_id,c.principal_name,c.charge_company_temporary_name,c.receivable_amount,c.paid_amount,c.need_invoice,c.pack,c.in_account,c.make_invoice,c.mail,c.create_time,1 as projectType
|
||||
from pay_common_project c
|
||||
<where>
|
||||
<if test="projectId != null amd projectId != ''">
|
||||
<if test="projectId != null and projectId != ''">
|
||||
AND c.id = #{projectId}
|
||||
</if>
|
||||
<if test="companyId != null amd companyId != ''">
|
||||
<if test="companyId != null and companyId != ''">
|
||||
AND c.charge_company_id = #{companyId}
|
||||
</if>
|
||||
<if test="projectName != null amd projectName != ''">
|
||||
<if test="projectName != null and projectName != ''">
|
||||
AND c.charge_project LIKE CONCAT('%',CONCAT(#{projectName},'%'))
|
||||
</if>
|
||||
<if test="year != null and year != ''">
|
||||
@@ -118,13 +119,13 @@
|
||||
from pay_working_group g
|
||||
inner join pay_working_group_subitem gsub on g.id = gsub.charge_company_id
|
||||
<where>
|
||||
<if test="projectId != null amd projectId != ''">
|
||||
<if test="projectId != null and projectId != ''">
|
||||
AND gsub.id = #{projectId}
|
||||
</if>
|
||||
<if test="companyId != null amd companyId != ''">
|
||||
<if test="companyId != null and companyId != ''">
|
||||
AND gsub.charge_company_id = #{companyId}
|
||||
</if>
|
||||
<if test="projectName != null amd projectName != ''">
|
||||
<if test="projectName != null and projectName != ''">
|
||||
AND g.working_group_project LIKE CONCAT('%',CONCAT(#{projectName},'%'))
|
||||
</if>
|
||||
<if test="year != null and year != ''">
|
||||
@@ -140,13 +141,13 @@
|
||||
from pay_meeting meeting
|
||||
inner join pay_meeting_situation sit on meeting.id = sit.meeting_id
|
||||
<where>
|
||||
<if test="projectId != null amd projectId != ''">
|
||||
<if test="projectId != null and projectId != ''">
|
||||
AND sit.id = #{projectId}
|
||||
</if>
|
||||
<if test="companyId != null amd companyId != ''">
|
||||
<if test="companyId != null and companyId != ''">
|
||||
AND sit.company_id = #{companyId}
|
||||
</if>
|
||||
<if test="projectName != null amd projectName != ''">
|
||||
<if test="projectName != null and projectName != ''">
|
||||
AND meeting.meeting_name LIKE CONCAT('%',CONCAT(#{projectName},'%'))
|
||||
</if>
|
||||
<if test="year != null and year != ''">
|
||||
@@ -158,21 +159,21 @@
|
||||
</where>
|
||||
<!-- 会员项目-->
|
||||
UNION ALL
|
||||
select msub.id,member.project_name,msub.charge_use,member.director_id,member.director_name,msub.company_name,msub.amount_receivable,msub.paid_amount,msub.need_invoice,msub.pack,msub.in_account,msub.make_invoice,msub.mail,msub.create_time,4
|
||||
from pay_member_project member
|
||||
inner join pay_member_project_subitem msub on member.id=msub.project_id
|
||||
select msub.id,pmp.project_name,msub.charge_use,pmp.director_id,pmp.director_name,msub.company_name,msub.amount_receivable,msub.paid_amount,msub.need_invoice,msub.pack,msub.in_account,msub.make_invoice,msub.mail,msub.create_time,4
|
||||
from pay_member_project pmp
|
||||
inner join pay_member_project_subitem msub on pmp.id=msub.project_id
|
||||
<where>
|
||||
<if test="projectId != null amd projectId != ''">
|
||||
<if test="projectId != null and projectId != ''">
|
||||
AND msub.id = #{projectId}
|
||||
</if>
|
||||
<if test="companyId != null amd companyId != ''">
|
||||
<if test="companyId != null and companyId != ''">
|
||||
AND msub.company_id = #{companyId}
|
||||
</if>
|
||||
<if test="projectName != null amd projectName != ''">
|
||||
AND member.project_name LIKE CONCAT('%',CONCAT(#{projectName},'%'))
|
||||
<if test="projectName != null and projectName != ''">
|
||||
AND pmp.project_name LIKE CONCAT('%',CONCAT(#{projectName},'%'))
|
||||
</if>
|
||||
<if test="year != null and year != ''">
|
||||
AND member.particular_year = #{year}
|
||||
AND pmp.particular_year = #{year}
|
||||
</if>
|
||||
<if test="pack != null and pack != ''">
|
||||
AND msub.pack = #{pack}
|
||||
@@ -184,13 +185,13 @@
|
||||
from tb_member_project tmember
|
||||
inner join tb_member_project_subitem tmsub on tmember.id=tmsub.project_id
|
||||
<where>
|
||||
<if test="projectId != null amd projectId != ''">
|
||||
<if test="projectId != null and projectId != ''">
|
||||
AND tmsub.id = #{projectId}
|
||||
</if>
|
||||
<if test="companyId != null amd companyId != ''">
|
||||
<if test="companyId != null and companyId != ''">
|
||||
AND tmsub.company_id = #{companyId}
|
||||
</if>
|
||||
<if test="projectName != null amd projectName != ''">
|
||||
<if test="projectName != null and projectName != ''">
|
||||
AND tmember.project_name LIKE CONCAT('%',CONCAT(#{projectName},'%'))
|
||||
</if>
|
||||
<if test="year != null and year != ''">
|
||||
@@ -200,8 +201,11 @@
|
||||
AND tmsub.pack = #{pack}
|
||||
</if>
|
||||
</where>
|
||||
) project
|
||||
<if test="packId != null and packId != ''">
|
||||
WHERE project.id NOT IN (SELECT project_id FROM pay_pack_company_project where pack_id = #{packId})
|
||||
</if>
|
||||
ORDER BY create_time desc
|
||||
|
||||
</select>
|
||||
<select id="queryPackToYear" resultType="java.lang.String">
|
||||
SELECT ppcp.project_id
|
||||
|
||||
+18
@@ -41,6 +41,24 @@ public interface IPayPackCompanyProjectService extends IService<PayPackCompanyPr
|
||||
*/
|
||||
void addPayPackCompanyProject(PayPackCompanyProject payPackCompanyProject);
|
||||
/**
|
||||
* @Description 取消打包
|
||||
* @Author lqt
|
||||
* @Date 2021/9/12
|
||||
* @Param
|
||||
* @Return
|
||||
* @Exception
|
||||
*/
|
||||
void removePayPackCompanyProject(PayPackCompanyProject payPackCompanyProject);
|
||||
/**
|
||||
* @Description 批量取消打包
|
||||
* @Author lqt
|
||||
* @Date 2021/9/12
|
||||
* @Param
|
||||
* @Return
|
||||
* @Exception
|
||||
*/
|
||||
void removeBatchPayPackCompanyProject(PayPackCompanyProject payPackCompanyProject);
|
||||
/**
|
||||
* @Description 筛选符合打包年份的项目
|
||||
* @Author lqt
|
||||
* @Date 2021/9/10
|
||||
|
||||
+18
-1
@@ -10,5 +10,22 @@ import com.jero.pack.entity.PayPackCompany;
|
||||
* @Version: V1.0
|
||||
*/
|
||||
public interface IPayPackCompanyService extends IService<PayPackCompany> {
|
||||
|
||||
/**
|
||||
* @Description 添加
|
||||
* @Author lqt
|
||||
* @Date 2021/9/12
|
||||
* @Param
|
||||
* @Return
|
||||
* @Exception
|
||||
*/
|
||||
void addPayPackCompany(PayPackCompany payPackCompany);
|
||||
/**
|
||||
* @Description 编辑
|
||||
* @Author lqt
|
||||
* @Date 2021/9/12
|
||||
* @Param
|
||||
* @Return
|
||||
* @Exception
|
||||
*/
|
||||
void editPayPackCompany(PayPackCompany payPackCompany);
|
||||
}
|
||||
|
||||
+47
@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.jero.common.api.vo.Result;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.common.service.ProjectPackService;
|
||||
import com.jero.pack.common.PackCommon;
|
||||
import com.jero.pack.entity.PayPackCompany;
|
||||
import com.jero.pack.entity.PayPackCompanyProject;
|
||||
@@ -16,6 +17,7 @@ import org.apache.commons.collections.CollectionUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.ArrayList;
|
||||
@@ -38,6 +40,8 @@ public class PayPackCompanyProjectServiceImpl extends ServiceImpl<PayPackCompany
|
||||
private IPayPackCompanyProjectService payPackCompanyProjectService;
|
||||
@Autowired
|
||||
private IPayPackCompanyService payPackCompanyService;
|
||||
@Autowired
|
||||
private ProjectPackService projectPackService;
|
||||
|
||||
|
||||
@Override
|
||||
@@ -51,6 +55,7 @@ public class PayPackCompanyProjectServiceImpl extends ServiceImpl<PayPackCompany
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public void addPayPackCompanyProject(PayPackCompanyProject payPackCompanyProject) {
|
||||
PayPackCompany payPackCompany = payPackCompanyService.getById(payPackCompanyProject.getPackId());
|
||||
if(Objects.isNull(payPackCompany)){
|
||||
@@ -74,6 +79,7 @@ public class PayPackCompanyProjectServiceImpl extends ServiceImpl<PayPackCompany
|
||||
throw new JeroBootException("项目下企业不匹配!");
|
||||
}
|
||||
payPackCompanyProject.setProjectId(s1);
|
||||
payPackCompanyProject.setCome(PackCommon.COME2);
|
||||
listPayPackCompanyProject.add(payPackCompanyProject);
|
||||
}
|
||||
LambdaQueryWrapper<PayPackCompanyProject> query = new LambdaQueryWrapper<>();
|
||||
@@ -83,10 +89,51 @@ public class PayPackCompanyProjectServiceImpl extends ServiceImpl<PayPackCompany
|
||||
throw new JeroBootException("项目已被打包!");
|
||||
}
|
||||
if(!CollectionUtils.isEmpty(listPayPackCompanyProject)){
|
||||
// 变更项目状态
|
||||
listPayPackCompanyProject.forEach(p->{
|
||||
projectPackService.updateProjectStatus(p.getProjectId(),String.valueOf(p.getProjectType()),String.valueOf(PackCommon.PACKAGING1),payPackCompanyProject.getPackId());
|
||||
});
|
||||
payPackCompanyProjectService.save(payPackCompanyProject);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public void removePayPackCompanyProject(PayPackCompanyProject payPackCompanyProject) {
|
||||
PayPackCompanyProject payPackCompanyProjectNew = payPackCompanyProjectService.getById(payPackCompanyProject.getId());
|
||||
if(Objects.isNull(payPackCompanyProjectNew)){
|
||||
throw new JeroBootException("不存在打包项目!");
|
||||
}
|
||||
if(Objects.equals(payPackCompanyProjectNew.getCome(),PackCommon.COME1)){
|
||||
throw new JeroBootException("此项目已在合同处创建关联,请先从合同处取消关联!");
|
||||
}
|
||||
// 更新项目状态
|
||||
projectPackService.updateProjectStatus(payPackCompanyProject.getProjectId(),String.valueOf(payPackCompanyProject.getProjectType()),String.valueOf(PackCommon.PACKAGING0),payPackCompanyProject.getPackId());
|
||||
payPackCompanyProjectService.removeById(payPackCompanyProject.getId());
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public void removeBatchPayPackCompanyProject(PayPackCompanyProject payPackCompanyProject) {
|
||||
String[] s = payPackCompanyProject.getPackProjectIds().split(",");
|
||||
for (String s1 : s) {
|
||||
if(StringUtils.isBlank(s1)){
|
||||
throw new JeroBootException("id不能为空!");
|
||||
}
|
||||
PayPackCompanyProject payPackCompanyProjectNew = payPackCompanyProjectService.getById(payPackCompanyProject.getId());
|
||||
if(Objects.isNull(payPackCompanyProjectNew)){
|
||||
throw new JeroBootException("不存在打包项目!");
|
||||
}
|
||||
if(Objects.equals(payPackCompanyProjectNew.getCome(),PackCommon.COME2)){
|
||||
throw new JeroBootException("此项目已在合同处创建关联,请先从合同处取消关联!");
|
||||
}
|
||||
// 更新项目状态
|
||||
projectPackService.updateProjectStatus(s1,String.valueOf(payPackCompanyProjectNew.getProjectType()),String.valueOf(PackCommon.PACKAGING0),payPackCompanyProject.getPackId());
|
||||
|
||||
}
|
||||
payPackCompanyProjectService.removeByIds(Arrays.asList(payPackCompanyProject.getPackProjectIds()));
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<String> queryPackToYear(String companyId,String projectType,String year) {
|
||||
return payPackCompanyProjectMapper.queryPackToYear(companyId,projectType,year, PackCommon.COME2);
|
||||
|
||||
+98
@@ -1,10 +1,24 @@
|
||||
package com.jero.pack.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.jero.common.api.vo.Result;
|
||||
import com.jero.common.exception.JeroBootException;
|
||||
import com.jero.pack.entity.PayPackCompany;
|
||||
import com.jero.pack.mapper.PayPackCompanyMapper;
|
||||
import com.jero.pack.service.IPayPackCompanyService;
|
||||
import com.jero.project.entity.PayWorkingGroupSubItem;
|
||||
import com.jero.temporary.entity.PayCompanyManagementTemporary;
|
||||
import com.jero.temporary.entity.PayContactsManagementTemporary;
|
||||
import com.jero.temporary.service.IPayCompanyManagementTemporaryService;
|
||||
import com.jero.temporary.service.IPayContactsManagementTemporaryService;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Objects;
|
||||
|
||||
/**
|
||||
* @Description: pay_pack_company
|
||||
@@ -15,4 +29,88 @@ import org.springframework.stereotype.Service;
|
||||
@Service
|
||||
public class PayPackCompanyServiceImpl extends ServiceImpl<PayPackCompanyMapper, PayPackCompany> implements IPayPackCompanyService {
|
||||
|
||||
@Autowired
|
||||
private IPayPackCompanyService payPackCompanyService;
|
||||
@Autowired
|
||||
private IPayCompanyManagementTemporaryService payCompanyManagementTemporaryService;
|
||||
@Autowired
|
||||
private IPayContactsManagementTemporaryService payContactsManagementTemporaryService;
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public void addPayPackCompany(PayPackCompany payPackCompany) {
|
||||
try {
|
||||
LambdaQueryWrapper<PayPackCompany> query = new LambdaQueryWrapper<>();
|
||||
query.eq(PayPackCompany::getCompanyId,payPackCompany.getCompanyId());
|
||||
query.eq(PayPackCompany::getPackYear,payPackCompany.getPackYear());
|
||||
PayPackCompany payPackCompanyNew = payPackCompanyService.getOne(query);
|
||||
if(!Objects.isNull(payPackCompanyNew)){
|
||||
throw new JeroBootException("该年份下已存在此打包企业!");
|
||||
}
|
||||
}catch (Exception e){
|
||||
log.error("",e);
|
||||
throw new JeroBootException("该年份下已存在此打包企业!");
|
||||
}
|
||||
setPayPackCompany(payPackCompany);
|
||||
payPackCompanyService.save(payPackCompany);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public void editPayPackCompany(PayPackCompany payPackCompany) {
|
||||
PayPackCompany payPackCompanyOld = payPackCompanyService.getById(payPackCompany.getId());
|
||||
if(Objects.isNull(payPackCompanyOld)){
|
||||
throw new JeroBootException("打包企业不存在!");
|
||||
}
|
||||
try {
|
||||
LambdaQueryWrapper<PayPackCompany> query = new LambdaQueryWrapper<>();
|
||||
query.eq(PayPackCompany::getCompanyId,payPackCompany.getCompanyId());
|
||||
query.eq(PayPackCompany::getPackYear,payPackCompany.getPackYear());
|
||||
PayPackCompany payPackCompanyNew = payPackCompanyService.getOne(query);
|
||||
if(!Objects.isNull(payPackCompanyNew) && !Objects.equals(payPackCompany.getId(),payPackCompanyNew.getId())){
|
||||
throw new JeroBootException("该年份下已存在此打包企业!");
|
||||
}
|
||||
}catch (Exception e){
|
||||
log.error("",e);
|
||||
throw new JeroBootException("该年份下已存在此打包企业!");
|
||||
}
|
||||
// 删除历史数据
|
||||
payCompanyManagementTemporaryService.removeById(payPackCompanyOld.getCompanyTemporaryId());
|
||||
payContactsManagementTemporaryService.removeByIds(Arrays.asList(payPackCompanyOld.getCompanyContactTemporaryId(),payPackCompanyOld.getPackContactTemporaryId()));
|
||||
setPayPackCompany(payPackCompany);
|
||||
payPackCompanyService.updateById(payPackCompany);
|
||||
}
|
||||
|
||||
/**
|
||||
* @Description 插入企业信息,联系人信息到临时表,更新项目记录
|
||||
* @Author lqt
|
||||
* @Date 2021/8/31
|
||||
* @Param payCommonProject
|
||||
* @Return
|
||||
* @Exception
|
||||
*/
|
||||
private PayPackCompany setPayPackCompany(PayPackCompany payPackCompany){
|
||||
// 企业
|
||||
PayCompanyManagementTemporary chargeCompanyName = payCompanyManagementTemporaryService.insertCompanyManagementTemporary(payPackCompany.getCompanyId());
|
||||
if(Objects.isNull(chargeCompanyName)){
|
||||
throw new JeroBootException("企业名称为空!");
|
||||
}
|
||||
payPackCompany.setCompanyTemporaryId(chargeCompanyName.getId());
|
||||
payPackCompany.setCompanyTemporaryName(chargeCompanyName.getCompanyName());
|
||||
// 企业联系人
|
||||
PayContactsManagementTemporary contactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(payPackCompany.getCompanyContactId());
|
||||
if(Objects.isNull(contactsName)){
|
||||
throw new JeroBootException("企业联系人名称为空!");
|
||||
}
|
||||
payPackCompany.setCompanyContactTemporaryId(contactsName.getId());
|
||||
payPackCompany.setCompanyContactTemporaryName(contactsName.getName());
|
||||
// 邮寄联系人
|
||||
PayContactsManagementTemporary mailContactsName = payContactsManagementTemporaryService.insertContactsManagementTemporary(payPackCompany.getPackContactId());
|
||||
if(Objects.isNull(mailContactsName)){
|
||||
throw new JeroBootException("邮寄联系人名称为空!");
|
||||
}
|
||||
payPackCompany.setPackContactTemporaryId(mailContactsName.getId());
|
||||
payPackCompany.setPackContactTemporaryName(mailContactsName.getName());
|
||||
return payPackCompany;
|
||||
}
|
||||
}
|
||||
|
||||
+5
@@ -47,4 +47,9 @@ public class PayPackCompanyProjectInput implements Serializable {
|
||||
*/
|
||||
@ApiModelProperty(value = "项目ids,逗号分割")
|
||||
private String projectIds;
|
||||
/**
|
||||
* 来款年份
|
||||
*/
|
||||
@ApiModelProperty(value = "来款年份")
|
||||
private String paymentDate;
|
||||
}
|
||||
|
||||
-2
@@ -65,8 +65,6 @@ public class PayCommonProjectController extends JeroController<PayCommonProject,
|
||||
@Autowired
|
||||
private IPayIncomeContractService payIncomeContractService;
|
||||
@Autowired
|
||||
private IPayPackCompanyService payPackCompanyService;
|
||||
@Autowired
|
||||
private ISysUserService sysUserService;
|
||||
@Autowired
|
||||
private IPayPackCompanyProjectService payPackCompanyProjectService;
|
||||
|
||||
+2
-2
@@ -150,8 +150,8 @@ public class PayCommonProjectServiceImpl extends ServiceImpl<PayCommonProjectMap
|
||||
|
||||
setPayCommonProject(payCommonProject);
|
||||
// 先删除临时表企业信息,联系人信息,邮寄联系人信息
|
||||
payCompanyManagementTemporaryService.removeById(payCommonProjectOld.getChargeCompanyId());
|
||||
payContactsManagementTemporaryService.removeByIds(Arrays.asList(payCommonProjectOld.getContactsId(),payCommonProjectOld.getMailContactsId()));
|
||||
payCompanyManagementTemporaryService.removeById(payCommonProjectOld.getChargeCompanyTemporaryId());
|
||||
payContactsManagementTemporaryService.removeByIds(Arrays.asList(payCommonProjectOld.getContactsTemporaryId(),payCommonProjectOld.getMailContactsTemporaryId()));
|
||||
payCommonProjectService.updateById(payCommonProject);
|
||||
}
|
||||
|
||||
|
||||
+9
-4
@@ -42,10 +42,7 @@ import org.springframework.web.multipart.MultipartHttpServletRequest;
|
||||
import javax.annotation.Resource;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import java.io.IOException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Objects;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
@@ -152,6 +149,10 @@ public class PayWorkingGroupSubItemServiceImpl extends ServiceImpl<PayWorkingGro
|
||||
@Override
|
||||
@Transactional
|
||||
public void editPayWorkingGroupSubItem(PayWorkingGroupSubItem payWorkingGroupSubItem) {
|
||||
PayWorkingGroupSubItem payWorkingGroupSubItemOld = payWorkingGroupSubItemService.getById(payWorkingGroupSubItem.getId());
|
||||
if(Objects.isNull(payWorkingGroupSubItemOld)){
|
||||
throw new JeroBootException("项目不存在!");
|
||||
}
|
||||
if(payWorkingGroupSubItem.getChargeWay() == PayProjectCommon.CHARGE_WAY2){
|
||||
if(Objects.isNull(payWorkingGroupSubItem.getReceivableAmount())){
|
||||
throw new JeroBootException("应收金额不能为空");
|
||||
@@ -207,6 +208,10 @@ public class PayWorkingGroupSubItemServiceImpl extends ServiceImpl<PayWorkingGro
|
||||
payWorkingGroupSubItemService.update(update);
|
||||
// todo 缺少添加打包功能
|
||||
}
|
||||
|
||||
// 先删除临时表企业信息,联系人信息,邮寄联系人信息
|
||||
payCompanyManagementTemporaryService.removeById(payWorkingGroupSubItemOld.getChargeCompanyTemporaryId());
|
||||
payContactsManagementTemporaryService.removeByIds(Arrays.asList(payWorkingGroupSubItemOld.getContactsTemporaryIdOne(),payWorkingGroupSubItemOld.getContactsTemporaryIdTwo(),payWorkingGroupSubItemOld.getContactsTemporaryIdThree()));
|
||||
payWorkingGroupSubItem = setPayWorkingGroupSubItem(payWorkingGroupSubItem);
|
||||
payWorkingGroupSubItem.setChargeUse(PayProjectCommon.CHARGE_USE1);
|
||||
payWorkingGroupSubItemService.updateById(payWorkingGroupSubItem);
|
||||
|
||||
Reference in New Issue
Block a user