Merge remote-tracking branch 'origin/branch20241月中旬' into branch20241月中旬
This commit is contained in:
+1
-14
@@ -12,10 +12,6 @@ import com.jero.common.system.vo.LoginUser;
|
||||
import com.jero.common.util.PasswordUtil;
|
||||
import com.jero.common.util.ValidUtil;
|
||||
import com.jero.common.util.oConvertUtils;
|
||||
import com.jero.contract.entity.PayIncomeContract;
|
||||
import com.jero.contract.entity.PayIncomeContractAssociated;
|
||||
import com.jero.contract.service.IPayIncomeContractAssociatedService;
|
||||
import com.jero.contract.service.IPayIncomeContractService;
|
||||
import com.jero.drafting.common.DraftingConstant;
|
||||
import com.jero.drafting.entity.PayDraftingGroup;
|
||||
import com.jero.drafting.entity.PayDraftingGroupSubItem;
|
||||
@@ -25,17 +21,8 @@ import com.jero.drafting.service.IPayDraftingGroupSubItemContactsService;
|
||||
import com.jero.drafting.service.IPayDraftingGroupSubItemService;
|
||||
import com.jero.drafting.vo.CheckVo;
|
||||
import com.jero.drafting.vo.PayDraftingGroupSubItemExcel;
|
||||
import com.jero.mail.entity.PayMailBill;
|
||||
import com.jero.mail.entity.PayMailBillProject;
|
||||
import com.jero.mail.service.IPayMailBillProjectService;
|
||||
import com.jero.mail.service.IPayMailBillService;
|
||||
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.temporary.entity.PayContactsManagementTemporary;
|
||||
import com.jero.temporary.service.IPayContactsManagementTemporaryService;
|
||||
import io.swagger.annotations.Api;
|
||||
@@ -305,7 +292,7 @@ public class PayDraftingGroupSubItemController extends JeroController<PayDraftin
|
||||
if (!StringUtils.isBlank(msg)) {
|
||||
return Result.error(msg.toString());
|
||||
}
|
||||
payDraftingGroupSubItemService.editPayWorkingGroupSubItem(payDraftingGroupSubItem);
|
||||
payDraftingGroupSubItemService.editPayWorkingGroupSubItemByCompany(payDraftingGroupSubItem);
|
||||
return Result.OK("编辑成功!");
|
||||
}
|
||||
|
||||
|
||||
+7
@@ -52,6 +52,13 @@ public interface IPayDraftingGroupSubItemService extends IService<PayDraftingGro
|
||||
*/
|
||||
void editPayWorkingGroupSubItem(PayDraftingGroupSubItem payDraftingGroupSubItem);
|
||||
|
||||
|
||||
/**
|
||||
* 企业端编辑
|
||||
* @param payDraftingGroupSubItem
|
||||
*/
|
||||
void editPayWorkingGroupSubItemByCompany(PayDraftingGroupSubItem payDraftingGroupSubItem);
|
||||
|
||||
/**
|
||||
* excel导入
|
||||
* @param request
|
||||
|
||||
+65
-2
@@ -31,7 +31,6 @@ import com.jero.drafting.service.IPayDraftingGroupSubItemService;
|
||||
import com.jero.drafting.vo.CheckVo;
|
||||
import com.jero.modules.system.entity.SysUser;
|
||||
import com.jero.modules.system.service.ISysUserService;
|
||||
import com.jero.project.entity.PayWorkingGroupSubItemContacts;
|
||||
import com.jero.temporary.entity.PayCompanyManagementTemporary;
|
||||
import com.jero.temporary.entity.PayContactsManagementTemporary;
|
||||
import com.jero.temporary.service.IPayCompanyManagementTemporaryService;
|
||||
@@ -49,7 +48,6 @@ import org.springframework.web.multipart.MultipartHttpServletRequest;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@@ -368,6 +366,71 @@ public class PayDraftingGroupSubItemServiceImpl extends ServiceImpl<PayDraftingG
|
||||
payDraftingGroupSubItemService.updateById(payDraftingGroupSubItem);
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑
|
||||
*
|
||||
* @param payDraftingGroupSubItem
|
||||
*/
|
||||
@Override
|
||||
public void editPayWorkingGroupSubItemByCompany(PayDraftingGroupSubItem payDraftingGroupSubItem) {
|
||||
String draftingGroupSubItemId = payDraftingGroupSubItem.getId();
|
||||
PayDraftingGroupSubItem payDraftingGroupSubItemOld = payDraftingGroupSubItemService.getById(draftingGroupSubItemId);
|
||||
if (Objects.isNull(payDraftingGroupSubItemOld)) {
|
||||
throw new JeroBootException("项目不存在!");
|
||||
}
|
||||
PayDraftingGroup payDraftingGroup = payDraftingGroupService.getById(payDraftingGroupSubItemOld.getDraftingGroupId());
|
||||
if (Objects.isNull(payDraftingGroup)) {
|
||||
throw new JeroBootException("起草组不存在!");
|
||||
}
|
||||
|
||||
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
// 判断当前登录人是否为企业联系人
|
||||
LambdaQueryWrapper<PayDraftingGroupSubItemContacts> queryDraftingGroupSubItemContacts = new LambdaQueryWrapper<>();
|
||||
queryDraftingGroupSubItemContacts.eq(PayDraftingGroupSubItemContacts::getDraftingGroupSubId, draftingGroupSubItemId);
|
||||
queryDraftingGroupSubItemContacts.eq(PayDraftingGroupSubItemContacts::getContactsId,sysUser.getId());
|
||||
long l = payDraftingGroupSubItemContactsService.count(queryDraftingGroupSubItemContacts);
|
||||
if(l == 0){
|
||||
throw new JeroBootException("非起草组成员不可操作!");
|
||||
}
|
||||
|
||||
try {
|
||||
// 编辑保存前再次校验来款项目是否存在
|
||||
LambdaQueryWrapper<PayDraftingGroupSubItem> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(PayDraftingGroupSubItem::getDraftingGroupId, payDraftingGroupSubItem.getDraftingGroupId());
|
||||
queryWrapper.eq(PayDraftingGroupSubItem::getChargeCompanyId, payDraftingGroupSubItem.getChargeCompanyId());
|
||||
PayDraftingGroupSubItem payDraftingGroupSubItemNew = payDraftingGroupSubItemService.getOne(queryWrapper);
|
||||
// 企业和联系人同时存在,则校验不通过
|
||||
if (!Objects.isNull(payDraftingGroupSubItemNew) && !Objects.equals(payDraftingGroupSubItemNew.getId(), draftingGroupSubItemId)) {
|
||||
throw new JeroBootException("起草组成员单位已存在!");
|
||||
}
|
||||
} catch (Exception e) {
|
||||
throw new JeroBootException("起草组成员单位已存在!");
|
||||
}
|
||||
LambdaQueryWrapper<PayDraftingGroupSubItemContacts> queryPayDraftingGroupSubItemContacts = new LambdaQueryWrapper<>();
|
||||
queryPayDraftingGroupSubItemContacts.eq(PayDraftingGroupSubItemContacts::getDraftingGroupSubId, payDraftingGroupSubItemOld.getId());
|
||||
List<PayDraftingGroupSubItemContacts> listPayDraftingGroupSubItemContacts = payDraftingGroupSubItemContactsService.list(queryPayDraftingGroupSubItemContacts);
|
||||
if (!CollectionUtils.isEmpty(listPayDraftingGroupSubItemContacts)) {
|
||||
payDraftingGroupSubItemOld.setPayDraftingGroupSubItemContactsList(listPayDraftingGroupSubItemContacts);
|
||||
}
|
||||
setPayDraftingGroupSubItemEdit(payDraftingGroupSubItem, payDraftingGroupSubItemOld);
|
||||
List<PayDraftingGroupSubItemContacts> listPayDraftingGroupSubItemContactsNew = payDraftingGroupSubItem.getPayDraftingGroupSubItemContactsList();
|
||||
// 添加联系人表
|
||||
if (!CollectionUtils.isEmpty(listPayDraftingGroupSubItemContactsNew)) {
|
||||
// 先删除之前的企业联系人
|
||||
LambdaUpdateWrapper<PayDraftingGroupSubItemContacts> updatePayWorkingGroupSubItemContacts = new LambdaUpdateWrapper<>();
|
||||
updatePayWorkingGroupSubItemContacts.eq(PayDraftingGroupSubItemContacts::getDraftingGroupSubId, draftingGroupSubItemId);
|
||||
payDraftingGroupSubItemContactsService.remove(updatePayWorkingGroupSubItemContacts);
|
||||
// 添加新的企业联系人
|
||||
for (int i = 0; i < listPayDraftingGroupSubItemContactsNew.size(); i++) {
|
||||
listPayDraftingGroupSubItemContactsNew.get(i).setOrderNum(i + 1);
|
||||
listPayDraftingGroupSubItemContactsNew.get(i).setDraftingGroupSubId(draftingGroupSubItemId);
|
||||
listPayDraftingGroupSubItemContactsNew.get(i).setDraftingGroupId(payDraftingGroupSubItem.getDraftingGroupId());
|
||||
}
|
||||
payDraftingGroupSubItemContactsService.saveBatch(listPayDraftingGroupSubItemContactsNew);
|
||||
}
|
||||
payDraftingGroupSubItemService.updateById(payDraftingGroupSubItem);
|
||||
}
|
||||
|
||||
/**
|
||||
* 插入企业信息,联系人信息到临时表,更新项目记录
|
||||
*
|
||||
|
||||
+1
-2
@@ -445,7 +445,6 @@ public class PayWorkingGroupSubItemController extends JeroController<PayWorkingG
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "企业端-工作组成员-修改",operateType = 3)
|
||||
@RequiresPermissions("workingGroupMember:edit")
|
||||
@ApiOperation(value = "企业端-工作组成员-修改", notes = "企业端-工作组成员-修改")
|
||||
@PostMapping(value = "/editCompany")
|
||||
public Result<?> editCompany(@RequestBody PayWorkingGroupSubItem payWorkingGroupSubItem) {
|
||||
@@ -456,7 +455,7 @@ public class PayWorkingGroupSubItemController extends JeroController<PayWorkingG
|
||||
if (!StringUtils.isBlank(msg)) {
|
||||
return Result.error(msg.toString());
|
||||
}
|
||||
payWorkingGroupSubItemService.editPayWorkingGroupSubItem(payWorkingGroupSubItem);
|
||||
payWorkingGroupSubItemService.editPayWorkingGroupSubItemByCompany(payWorkingGroupSubItem);
|
||||
return Result.OK("编辑成功!");
|
||||
}
|
||||
|
||||
|
||||
+11
-2
@@ -1,11 +1,9 @@
|
||||
package com.jero.project.service;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.jero.company.entity.PayContactsManagement;
|
||||
import com.jero.project.entity.PayWorkGroupSubletStatistics;
|
||||
import com.jero.project.entity.PayWorkingGroupSubItem;
|
||||
import com.jero.project.entity.PayWorkingGroupSubletSearch;
|
||||
@@ -50,6 +48,17 @@ public interface IPayWorkingGroupSubItemService extends IService<PayWorkingGroup
|
||||
* @Exception
|
||||
*/
|
||||
void editPayWorkingGroupSubItem(PayWorkingGroupSubItem payWorkingGroupSubItem);
|
||||
|
||||
/**
|
||||
* @Description 编辑
|
||||
* @Author lqt
|
||||
* @Date 2021/9/3
|
||||
* @Param
|
||||
* @Return
|
||||
* @Exception
|
||||
*/
|
||||
void editPayWorkingGroupSubItemByCompany(PayWorkingGroupSubItem payWorkingGroupSubItem);
|
||||
|
||||
/**
|
||||
* @Description excel导入
|
||||
* @Author lqt
|
||||
|
||||
+163
-4
@@ -25,7 +25,6 @@ import com.jero.company.entity.PayCompanyManagement;
|
||||
import com.jero.company.entity.PayContactsManagement;
|
||||
import com.jero.company.service.IPayCompanyManagementService;
|
||||
import com.jero.company.service.IPayContactsManagementService;
|
||||
import com.jero.config.StaticConfig;
|
||||
import com.jero.contract.entity.PayIncomeContract;
|
||||
import com.jero.contract.entity.PayIncomeContractAssociated;
|
||||
import com.jero.contract.service.IPayIncomeContractAssociatedService;
|
||||
@@ -57,13 +56,11 @@ import com.jero.temporary.service.IPayContactsManagementTemporaryService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.collections.CollectionUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.apache.poi.ss.usermodel.DataFormat;
|
||||
import org.apache.shiro.SecurityUtils;
|
||||
import org.jeecgframework.poi.excel.ExcelImportCheckUtil;
|
||||
import org.jeecgframework.poi.excel.ExcelImportUtil;
|
||||
import org.jeecgframework.poi.excel.entity.ImportParams;
|
||||
import org.springframework.core.env.Environment;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
@@ -74,7 +71,6 @@ import javax.servlet.http.HttpServletRequest;
|
||||
import java.io.File;
|
||||
import java.math.BigDecimal;
|
||||
import java.math.RoundingMode;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.time.LocalDate;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import java.util.*;
|
||||
@@ -473,6 +469,169 @@ public class PayWorkingGroupSubItemServiceImpl extends ServiceImpl<PayWorkingGro
|
||||
payMailBillService.updateContactByProjectId(mailContactsId, workingGroupSubItemId, null);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
public void editPayWorkingGroupSubItemByCompany(PayWorkingGroupSubItem payWorkingGroupSubItem) {
|
||||
String workingGroupSubItemId = payWorkingGroupSubItem.getId();
|
||||
PayWorkingGroupSubItem payWorkingGroupSubItemOld = payWorkingGroupSubItemService.getById(workingGroupSubItemId);
|
||||
if(Objects.isNull(payWorkingGroupSubItemOld)){
|
||||
throw new JeroBootException("项目不存在!");
|
||||
}
|
||||
PayWorkingGroup payWorkingGroup = payWorkingGroupService.getById(payWorkingGroupSubItem.getWorkingGroupId());
|
||||
if(Objects.isNull(payWorkingGroup)){
|
||||
throw new JeroBootException("工作组不存在!");
|
||||
}
|
||||
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
// 判断当前登录人是否为企业联系人
|
||||
LambdaQueryWrapper<PayWorkingGroupSubItemContacts> queryWorkingGroupSubItemContacts = new LambdaQueryWrapper<>();
|
||||
queryWorkingGroupSubItemContacts.eq(PayWorkingGroupSubItemContacts::getWorkingGroupSubId, workingGroupSubItemId);
|
||||
queryWorkingGroupSubItemContacts.eq(PayWorkingGroupSubItemContacts::getContactsId,sysUser.getId());
|
||||
long l = payWorkingGroupSubItemContactsService.count(queryWorkingGroupSubItemContacts);
|
||||
if(l == 0){
|
||||
throw new JeroBootException("非工作组成员不可操作!");
|
||||
}
|
||||
|
||||
// 项目为打包状态 || 到账!=0 || 开票!=0 || 邮寄!=0
|
||||
if(!Objects.equals(payWorkingGroupSubItem.getChargeCompanyId(),payWorkingGroupSubItemOld.getChargeCompanyId())
|
||||
&& (Objects.equals(payWorkingGroupSubItem.getPack(),PayProjectCommon.PACKAGING1)
|
||||
|| !Objects.equals(payWorkingGroupSubItem.getInAccount(),PayProjectCommon.IN_ACCOUNT0)
|
||||
|| !Objects.equals(payWorkingGroupSubItem.getMakeInvoice(),PayProjectCommon.MAKE_INVOICE0)
|
||||
|| !Objects.equals(payWorkingGroupSubItem.getMail(),PayProjectCommon.MAIL0))){
|
||||
throw new JeroBootException("来款企业不可更改!");
|
||||
}
|
||||
if(Objects.equals(payWorkingGroupSubItem.getChargeWay(),PayProjectCommon.CHARGE_WAY2)){
|
||||
if(Objects.isNull(payWorkingGroupSubItem.getReceivableAmount())){
|
||||
throw new JeroBootException("待确收金额不能为空");
|
||||
}
|
||||
if(StringUtils.isBlank(payWorkingGroupSubItem.getContractNum())){
|
||||
throw new JeroBootException("合同号不能为空");
|
||||
}
|
||||
}
|
||||
if(Objects.equals(payWorkingGroupSubItem.getChargeWay(),PayProjectCommon.CHARGE_WAY3)){
|
||||
if(Objects.isNull(payWorkingGroupSubItem.getChargeNoticeNo())){
|
||||
throw new JeroBootException("收费通知号不能为空");
|
||||
}
|
||||
if(Objects.isNull(payWorkingGroupSubItem.getReceivableAmount())){
|
||||
throw new JeroBootException("待确收金额不能为空");
|
||||
}
|
||||
}
|
||||
|
||||
try {
|
||||
// 编辑保存前再次校验来款项目是否存在
|
||||
LambdaQueryWrapper<PayWorkingGroupSubItem> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(PayWorkingGroupSubItem::getWorkingGroupId,payWorkingGroupSubItem.getWorkingGroupId());
|
||||
queryWrapper.eq(PayWorkingGroupSubItem::getChargeCompanyId,payWorkingGroupSubItem.getChargeCompanyId());
|
||||
// queryWrapper.eq(PayWorkingGroupSubItem::getContactsIdOne,payWorkingGroupSubItem.getContactsIdOne());
|
||||
PayWorkingGroupSubItem payWorkingGroupSubItemNew = payWorkingGroupSubItemService.getOne(queryWrapper);
|
||||
// 来款项目存在,并且编辑id与查询不同,则校验不通过
|
||||
if(!Objects.isNull(payWorkingGroupSubItemNew)
|
||||
&& !Objects.equals(payWorkingGroupSubItemNew.getId(), workingGroupSubItemId)) {
|
||||
throw new JeroBootException("工作组成员单位已存在!");
|
||||
}
|
||||
}catch (Exception e){
|
||||
log.info("工作组成员-编辑异常",e);
|
||||
throw new JeroBootException("工作组成员单位已存在!");
|
||||
}
|
||||
// 校验项目是否已关联合同
|
||||
PayIncomeContract payIncomeContract = payIncomeContractService.checkPayIncomeContractAssociated(workingGroupSubItemId);
|
||||
if(!Objects.isNull(payIncomeContract)){
|
||||
if(!Objects.equals(payWorkingGroupSubItem.getChargeWay(),payWorkingGroupSubItemOld.getChargeWay())){
|
||||
throw new JeroBootException("项目已关联合同,来款方式不可修改!");
|
||||
}
|
||||
if(Objects.equals(payWorkingGroupSubItemOld.getChargeWay(),PayProjectCommon.CHARGE_WAY2) && !Objects.equals(payWorkingGroupSubItemOld.getContractNum(),payWorkingGroupSubItem.getContractNum())){
|
||||
throw new JeroBootException("项目已关联合同,合同编号不可修改!");
|
||||
}
|
||||
}else{
|
||||
PayIncomeContract payIncomeContractAdd = null;
|
||||
// 来款方式为合同,校验合同编号
|
||||
if(Objects.equals(payWorkingGroupSubItem.getChargeWay(),PayProjectCommon.CHARGE_WAY2)){
|
||||
payIncomeContractAdd = payIncomeContractService.setPayIncomeContractAssociated(payWorkingGroupSubItem.getContractNum(),payWorkingGroupSubItem.getChargeCompanyId(), workingGroupSubItemId);
|
||||
}
|
||||
if(!Objects.isNull(payIncomeContractAdd)){
|
||||
// 合同存在 && 合同状态不为草稿,不为未通过 关联合同
|
||||
payIncomeContractService.insertPayIncomeContract(payIncomeContractAdd, workingGroupSubItemId,Integer.parseInt(PayProjectCommon.PROJECT_TYPE2));
|
||||
Integer pack = payIncomeContractAdd.getPack();
|
||||
if (Objects.equals(pack,PayProjectCommon.PACKAGING1)){
|
||||
payWorkingGroupSubItem.setPack(PayProjectCommon.PACKAGING1);
|
||||
}
|
||||
}else{
|
||||
payWorkingGroupSubItem.setPack(payWorkingGroupSubItemOld.getPack());
|
||||
}
|
||||
// 关联了合同,判断合同是否打包,更新项目打包状态,添加打包
|
||||
if(!Objects.isNull(payIncomeContractAdd) && Objects.equals(payIncomeContractAdd.getPack(),PayProjectCommon.PACKAGING1)){
|
||||
String masterContactsId = payWorkingGroupSubItemContactsMapper.getMasterContactsId(workingGroupSubItemId);
|
||||
payPackCompanyProjectService.setPack(payWorkingGroupSubItem.getChargeCompanyId(),masterContactsId,payIncomeContractAdd.getPackYear(), workingGroupSubItemId,PayProjectCommon.PROJECT_TYPE2,payIncomeContractAdd.getPack());
|
||||
}
|
||||
}
|
||||
LambdaQueryWrapper<PayWorkingGroupSubItemContacts> queryPayWorkingGroupSubItemContacts = new LambdaQueryWrapper<>();
|
||||
queryPayWorkingGroupSubItemContacts.eq(PayWorkingGroupSubItemContacts::getWorkingGroupSubId,payWorkingGroupSubItemOld.getId());
|
||||
List<PayWorkingGroupSubItemContacts> listPayWorkingGroupSubItemContacts = payWorkingGroupSubItemContactsService.list(queryPayWorkingGroupSubItemContacts);
|
||||
if(!CollectionUtils.isEmpty(listPayWorkingGroupSubItemContacts)){
|
||||
payWorkingGroupSubItemOld.setPayWorkingGroupSubItemContactsList(listPayWorkingGroupSubItemContacts);
|
||||
}
|
||||
setPayWorkingGroupSubItemEdit(payWorkingGroupSubItem,payWorkingGroupSubItemOld);
|
||||
List<PayWorkingGroupSubItemContacts> listPayWorkingGroupSubItemContactsNew = payWorkingGroupSubItem.getPayWorkingGroupSubItemContactsList();
|
||||
// 添加联系人表
|
||||
if(!CollectionUtils.isEmpty(listPayWorkingGroupSubItemContactsNew)){
|
||||
for (int i = 0; i < listPayWorkingGroupSubItemContactsNew.size(); i++) {
|
||||
listPayWorkingGroupSubItemContactsNew.get(i).setOrderNum(i+1);
|
||||
listPayWorkingGroupSubItemContactsNew.get(i).setWorkingGroupId(payWorkingGroupSubItem.getWorkingGroupId());
|
||||
listPayWorkingGroupSubItemContactsNew.get(i).setWorkingGroupSubId(workingGroupSubItemId);
|
||||
}
|
||||
payWorkingGroupSubItemContactsService.saveBatch(listPayWorkingGroupSubItemContactsNew);
|
||||
}
|
||||
payWorkingGroupSubItem.setChargeUse(PayProjectCommon.CHARGE_USE1);
|
||||
// 变更待确收金额,重新校验状态
|
||||
ProjectStatusVO projectStatusVO = projectDetailService.getStatus(workingGroupSubItemId,payWorkingGroupSubItem.getReceivableAmount(),payWorkingGroupSubItem.getNeedInvoice());
|
||||
if(!Objects.isNull(projectStatusVO)){
|
||||
if(!Objects.isNull(projectStatusVO.getInAccount())){
|
||||
payWorkingGroupSubItem.setInAccount(projectStatusVO.getInAccount());
|
||||
}
|
||||
if(!Objects.isNull(projectStatusVO.getMakeInvoice())){
|
||||
payWorkingGroupSubItem.setMakeInvoice(projectStatusVO.getMakeInvoice());
|
||||
}
|
||||
if(!Objects.isNull(projectStatusVO.getMail())){
|
||||
payWorkingGroupSubItem.setMail(projectStatusVO.getMail());
|
||||
}
|
||||
}
|
||||
String paymentStatus = payPaymentCheckService.getPaymentStatus(payWorkingGroupSubItem.getReceivableAmount(),payWorkingGroupSubItemOld.getPaidAmount(),payWorkingGroupSubItemOld.getPaymentStatus());
|
||||
payWorkingGroupSubItem.setPaymentStatus(paymentStatus);
|
||||
payWorkingGroupSubItem.setInAccount(null);
|
||||
payWorkingGroupSubItem.setPaidAmount(null);
|
||||
|
||||
BigDecimal taxRate = payWorkingGroupSubItem.getTaxRate();
|
||||
BigDecimal receivableAmount = payWorkingGroupSubItem.getReceivableAmount();
|
||||
BigDecimal noTaxAmount = receivableAmount.divide(taxRate.add(BigDecimal.ONE), 2, RoundingMode.HALF_UP);
|
||||
BigDecimal tax = receivableAmount.subtract(noTaxAmount);
|
||||
payWorkingGroupSubItem.setNoTaxAmount(noTaxAmount);
|
||||
payWorkingGroupSubItem.setTax(tax);
|
||||
payWorkingGroupSubItemService.updateById(payWorkingGroupSubItem);
|
||||
LambdaUpdateWrapper<PayWorkingGroupSubItem> updatePayWorkingGroupSubItem = new LambdaUpdateWrapper<>();
|
||||
updatePayWorkingGroupSubItem.eq(PayWorkingGroupSubItem::getId, workingGroupSubItemId);
|
||||
// 选择无
|
||||
if(Objects.equals(payWorkingGroupSubItem.getChargeWay(),PayProjectCommon.CHARGE_WAY1)){
|
||||
//updatePayWorkingGroupSubItem.set(PayWorkingGroupSubItem::getReceivableAmount,null);
|
||||
updatePayWorkingGroupSubItem.set(PayWorkingGroupSubItem::getContractNum,null);
|
||||
updatePayWorkingGroupSubItem.set(PayWorkingGroupSubItem::getCharge,null);
|
||||
updatePayWorkingGroupSubItem.set(PayWorkingGroupSubItem::getChargeNoticeNo,null);
|
||||
updatePayWorkingGroupSubItem.set(PayWorkingGroupSubItem::getChargeNoticeId,null);
|
||||
}
|
||||
// 选择合同
|
||||
if(Objects.equals(payWorkingGroupSubItem.getChargeWay(),PayProjectCommon.CHARGE_WAY2)){
|
||||
updatePayWorkingGroupSubItem.set(PayWorkingGroupSubItem::getCharge,null);
|
||||
updatePayWorkingGroupSubItem.set(PayWorkingGroupSubItem::getChargeNoticeNo,null);
|
||||
updatePayWorkingGroupSubItem.set(PayWorkingGroupSubItem::getChargeNoticeId,null);
|
||||
}
|
||||
// 选择收费通知
|
||||
if(Objects.equals(payWorkingGroupSubItem.getChargeWay(),PayProjectCommon.CHARGE_WAY3)){
|
||||
updatePayWorkingGroupSubItem.set(PayWorkingGroupSubItem::getContractNum,null);
|
||||
}
|
||||
payWorkingGroupSubItemService.update(updatePayWorkingGroupSubItem);
|
||||
// 如果有邮寄信息更新邮寄联系人信息
|
||||
String mailContactsId = payWorkingGroupSubItem.getMailContactsId();
|
||||
payMailBillService.updateContactByProjectId(mailContactsId, workingGroupSubItemId, null);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = JeroBootException.class)
|
||||
public void importExcel(HttpServletRequest request) {
|
||||
|
||||
Reference in New Issue
Block a user