修改bug#40330

This commit is contained in:
梁琦涛
2021-10-25 12:07:18 +08:00
parent c4793c5063
commit 91ef458342
2 changed files with 83 additions and 0 deletions
@@ -86,6 +86,12 @@ public class ProjectDetailServiceImpl implements ProjectDetailService {
if(Objects.isNull(payCommonProject)){
throw new JeroBootException("项目不存在!");
}
if(Objects.isNull(payCommonProject.getPaidAmount())){
payCommonProject.setPaidAmount(new BigDecimal("0.00"));
}
if(Objects.isNull(payCommonProject.getReceivableAmount())){
payCommonProject.setReceivableAmount(new BigDecimal("0.00"));
}
// 工作组项目资料
if(Objects.equals(String.valueOf(payCommonProject.getProjectType()), ProjectCommon.PROJECT_TYPE2)){
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
@@ -1,5 +1,7 @@
package com.jero.project.service.impl;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -7,6 +9,8 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jero.common.exception.JeroBootException;
import com.jero.common.service.RolePermissionService;
import com.jero.common.system.vo.LoginUser;
import com.jero.company.entity.PayCompanyManagement;
import com.jero.company.entity.PayContactsManagement;
import com.jero.contract.entity.PayIncomeContractAssociated;
import com.jero.contract.service.IPayIncomeContractAssociatedService;
import com.jero.modules.system.entity.SysUser;
@@ -18,9 +22,14 @@ import com.jero.project.vo.PayWorkingGroupVO;
import com.jero.project.service.IPayWorkingGroupService;
import com.jero.project.mapper.PayWorkingGroupMapper;
import com.jero.statistics.entity.*;
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.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.shiro.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -56,6 +65,10 @@ public class PayWorkingGroupServiceImpl extends ServiceImpl<PayWorkingGroupMappe
private ISysUserService sysUserService;
@Resource
private RolePermissionService rolePermissionService;
@Resource
private IPayCompanyManagementTemporaryService payCompanyManagementTemporaryService;
@Resource
private IPayContactsManagementTemporaryService payContactsManagementTemporaryService;
@Override
public IPage<PayWorkingGroupVO> queryPageList(Page<PayWorkingGroupVO> page, PayWorkingGroup payWorkingGroup) {
@@ -144,6 +157,9 @@ public class PayWorkingGroupServiceImpl extends ServiceImpl<PayWorkingGroupMappe
if(Objects.isNull(payWorkingGroupOld)){
throw new JeroBootException("工作组不存在!");
}
if(payWorkingGroupOld.getWorkingGroupProject().length() == 50){
throw new JeroBootException("工作组名称长度为50位,不可复制,请修改之后在复制!");
}
String str = payWorkingGroupOld.getWorkingGroupProject() + "-副本";
LambdaQueryWrapper<PayWorkingGroup> queryPayWorkingGroup = new LambdaQueryWrapper<>();
queryPayWorkingGroup.like(PayWorkingGroup::getWorkingGroupProject,str);
@@ -185,6 +201,64 @@ public class PayWorkingGroupServiceImpl extends ServiceImpl<PayWorkingGroupMappe
List<PayWorkingGroupSubItem> listPayWorkingGroupSubItem = payWorkingGroupSubItemService.list(query);
if(!CollectionUtils.isEmpty(listPayWorkingGroupSubItem)){
listPayWorkingGroupSubItem.forEach(p->{
// 添加企业临时数据
PayCompanyManagementTemporary payCompanyManagementTemporary = payCompanyManagementTemporaryService.getById(p.getChargeCompanyTemporaryId());
if(Objects.isNull(payCompanyManagementTemporary)){
payCompanyManagementTemporary = payCompanyManagementTemporaryService.insertCompanyManagementTemporary(p.getChargeCompanyId());
}else{
payCompanyManagementTemporary.setCompanyId(payCompanyManagementTemporary.getId());
payCompanyManagementTemporary.setId(null);
payCompanyManagementTemporaryService.save(payCompanyManagementTemporary);
}
// 添加联系人一临时数据
PayContactsManagementTemporary payContactsManagementTemporaryOne = payContactsManagementTemporaryService.getById(p.getContactsTemporaryIdOne());
if(Objects.isNull(payContactsManagementTemporaryOne)){
payContactsManagementTemporaryOne = payContactsManagementTemporaryService.insertContactsManagementTemporary(p.getContactsIdOne());
}else{
payContactsManagementTemporaryOne.setCompanyId(payContactsManagementTemporaryOne.getId());
payContactsManagementTemporaryOne.setId(null);
payContactsManagementTemporaryService.save(payContactsManagementTemporaryOne);
}
// 添加联系人二临时数据
if(!StringUtils.isEmpty(p.getContactsTemporaryIdTwo())){
PayContactsManagementTemporary payContactsManagementTemporaryTwo = payContactsManagementTemporaryService.getById(p.getContactsTemporaryIdTwo());
if(Objects.isNull(payContactsManagementTemporaryTwo)){
payContactsManagementTemporaryTwo = payContactsManagementTemporaryService.insertContactsManagementTemporary(p.getContactsIdTwo());
} else {
payContactsManagementTemporaryTwo.setCompanyId(payContactsManagementTemporaryTwo.getId());
payContactsManagementTemporaryTwo.setId(null);
payContactsManagementTemporaryService.save(payContactsManagementTemporaryTwo);
}
p.setContactsTemporaryIdTwo(payContactsManagementTemporaryTwo.getId());
}
// 添加联系人三临时数据
if(!StringUtils.isEmpty(p.getContactsTemporaryIdThree())){
PayContactsManagementTemporary payContactsManagementTemporaryThree = payContactsManagementTemporaryService.getById(p.getContactsTemporaryIdThree());
if(Objects.isNull(payContactsManagementTemporaryThree)){
payContactsManagementTemporaryThree = payContactsManagementTemporaryService.insertContactsManagementTemporary(p.getContactsIdThree());
}else {
payContactsManagementTemporaryThree.setCompanyId(payContactsManagementTemporaryThree.getId());
payContactsManagementTemporaryThree.setId(null);
payContactsManagementTemporaryService.save(payContactsManagementTemporaryThree);
}
p.setContactsTemporaryIdThree(payContactsManagementTemporaryThree.getId());
}
// 添加邮寄联系人临时数据
PayContactsManagementTemporary payContactsManagementTemporaryMail = payContactsManagementTemporaryService.getById(p.getMailContactsId());
if(Objects.isNull(payContactsManagementTemporaryMail)){
payContactsManagementTemporaryMail = payContactsManagementTemporaryService.insertContactsManagementTemporary(p.getMailContactsId());
} else {
payContactsManagementTemporaryMail.setCompanyId(payContactsManagementTemporaryMail.getId());
payContactsManagementTemporaryMail.setId(null);
payContactsManagementTemporaryService.save(payContactsManagementTemporaryMail);
}
// 来款为合同,不复制合同编号
if(Objects.equals(p.getChargeWay(), PayProjectCommon.CHARGE_WAY2)){
p.setContractNum(null);
@@ -193,6 +267,9 @@ public class PayWorkingGroupServiceImpl extends ServiceImpl<PayWorkingGroupMappe
if(Objects.equals(p.getChargeWay(), PayProjectCommon.CHARGE_WAY3)){
p.setChargeNoticeId(null);
}
p.setChargeCompanyTemporaryId(payCompanyManagementTemporary.getId());
p.setContactsTemporaryIdOne(payContactsManagementTemporaryOne.getId());
p.setMailContactsTemporaryId(payContactsManagementTemporaryMail.getId());
p.setPack(PayProjectCommon.PACKAGING0);
p.setInAccount(PayProjectCommon.IN_ACCOUNT0);
p.setMakeInvoice(PayProjectCommon.MAKE_INVOICE0);