10-24-修复

This commit is contained in:
2025-10-24 15:22:31 +08:00
parent cdcd665d43
commit f920d4976e
9 changed files with 102 additions and 120 deletions

View File

@ -1,14 +1,15 @@
package org.dromara.xzd.domain;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serial;
import java.util.Date;
/**
* 供应商资质信息对象 xzd_supplier_qualification
@ -60,9 +61,9 @@ public class XzdSupplierQualification extends BaseEntity {
private String fileUrl;
/**
* 文件ID
* 文件ID,逗号分隔
*/
private Long fileId;
private String fileId;
/**
* 备注

View File

@ -1,17 +1,19 @@
package org.dromara.xzd.domain.bo;
import org.dromara.xzd.domain.XzdSupplierQualification;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.github.linpeilie.annotations.AutoMapper;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.xzd.domain.XzdSupplierQualification;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
/**
* 供应商资质信息业务对象 xzd_supplier_qualification
*
@ -64,10 +66,9 @@ public class XzdSupplierQualificationBo extends BaseEntity {
private String fileUrl;
/**
* 文件ID
* 文件ID,逗号分隔
*/
@NotNull(message = "文件ID不能为空", groups = { AddGroup.class, EditGroup.class })
private Long fileId;
private String fileId;
/**
* 备注

View File

@ -61,6 +61,8 @@ public class XzdProjectVo implements Serializable {
private String projectTypeName;
private String xmdl;
/**
* 项目状态
*/

View File

@ -1,14 +1,11 @@
package org.dromara.xzd.domain.vo;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.dromara.xzd.domain.XzdSupplierQualification;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import org.dromara.common.excel.annotation.ExcelDictFormat;
import org.dromara.common.excel.convert.ExcelDictConvert;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.dromara.xzd.domain.XzdSupplierQualification;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serial;
@ -75,7 +72,7 @@ public class XzdSupplierQualificationVo implements Serializable {
* 文件ID
*/
@ExcelProperty(value = "文件ID")
private Long fileId;
private String fileId;
/**
* 备注

View File

@ -1,32 +1,31 @@
package org.dromara.xzd.service.impl;
import cn.hutool.core.util.IdUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.RequiredArgsConstructor;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.utils.MapstructUtils;
import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.mybatis.core.page.PageQuery;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import lombok.RequiredArgsConstructor;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.utils.BatchNumberGenerator;
import org.dromara.system.domain.vo.SysDeptVo;
import org.dromara.system.domain.vo.SysUserVo;
import org.dromara.system.service.impl.SysDeptServiceImpl;
import org.dromara.system.service.impl.SysOssServiceImpl;
import org.dromara.system.service.impl.SysUserServiceImpl;
import org.dromara.xzd.domain.XzdContractAgreement;
import org.dromara.xzd.domain.bo.XzdContractAgreementBo;
import org.dromara.xzd.domain.dto.QuerCorrespondentDto;
import org.dromara.xzd.domain.vo.XzdContractAgreementVo;
import org.dromara.xzd.domain.vo.XzdSupplierInfoVo;
import org.dromara.xzd.mapper.XzdContractAgreementMapper;
import org.dromara.xzd.service.IXzdContractAgreementService;
import org.dromara.xzd.service.IXzdCorrespondentList;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.dromara.xzd.domain.bo.XzdContractAgreementBo;
import org.dromara.xzd.domain.vo.XzdContractAgreementVo;
import org.dromara.xzd.domain.XzdContractAgreement;
import org.dromara.xzd.mapper.XzdContractAgreementMapper;
import org.dromara.xzd.service.IXzdContractAgreementService;
import org.springframework.transaction.annotation.Transactional;
import java.util.*;
@ -147,23 +146,26 @@ public class XzdContractAgreementServiceImpl extends ServiceImpl<XzdContractAgre
@Override
public Boolean updateByBo(XzdContractAgreementBo bo) {
XzdContractAgreement update = MapstructUtils.convert(bo, XzdContractAgreement.class);
// validEntityBeforeSave(update);
validEntityBeforeSave(update);
//老数据
XzdContractAgreementVo old = baseMapper.selectVoById(update.getId());
setValue(Collections.singletonList(old));
//处理文件
List<String> oldFiles = Arrays.stream(old.getFileId().split(",")).toList();
List<String> newFiles = Arrays.stream(bo.getFileId().split(",")).toList();
List<Long> deleteIds = new ArrayList<>();
for (String oldFile : oldFiles) {
if (!newFiles.contains(oldFile)){
deleteIds.add(Long.valueOf(oldFile));
//更新文件
if (bo.getFileId() != null && !bo.getFileId().isEmpty()){
if (old.getFileId() != null && !old.getFileId().isEmpty()) {
List<Long> oldFileId = Arrays.stream(old.getFileId().split(",")).map(Long::valueOf).toList();
List<Long> nowFileId = Arrays.stream(bo.getFileId().split(",")).map(Long::valueOf).toList();
for (Long l : oldFileId) {
if (!nowFileId.contains(l)) {
sysOssService.deleteWithValidByIds(List.of(l), false);
}
}
}
}else {
if (old.getFileId()!= null && !old.getFileId().isEmpty()){
List<Long> deleteIds = Arrays.stream(old.getFileId().split(",")).map(Long::valueOf).toList();
sysOssService.deleteWithValidByIds(deleteIds, false);
}
}
if (!deleteIds.isEmpty()) {
sysOssService.deleteWithValidByIds(deleteIds, false);
}
return baseMapper.updateById(update) > 0;

View File

@ -1,16 +1,15 @@
package org.dromara.xzd.service.impl;
import cn.hutool.core.util.IdUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.RequiredArgsConstructor;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.utils.MapstructUtils;
import org.dromara.common.core.utils.StringUtils;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.mybatis.core.page.PageQuery;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import lombok.RequiredArgsConstructor;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.utils.BatchNumberGenerator;
import org.dromara.system.domain.vo.SysDeptVo;
import org.dromara.system.domain.vo.SysUserVo;
@ -20,24 +19,23 @@ import org.dromara.system.service.impl.SysUserServiceImpl;
import org.dromara.xzd.comprehensive.domain.XzdHtglHtbgqd;
import org.dromara.xzd.comprehensive.service.IXzdHtglHtbgqdService;
import org.dromara.xzd.domain.*;
import org.dromara.xzd.domain.bo.XzdContractChangeBo;
import org.dromara.xzd.domain.dto.QuerCorrespondentDto;
import org.dromara.xzd.domain.vo.XzdBusinessSealVo;
import org.dromara.xzd.domain.vo.XzdContractChangeVo;
import org.dromara.xzd.domain.vo.XzdContractDetailsVo;
import org.dromara.xzd.enums.XzdClassEnum;
import org.dromara.xzd.service.IXzdBusinessSealService;
import org.dromara.xzd.mapper.XzdContractChangeMapper;
import org.dromara.xzd.service.IXzdContractChangeService;
import org.dromara.xzd.service.IXzdCorrespondentList;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.dromara.xzd.domain.bo.XzdContractChangeBo;
import org.dromara.xzd.domain.vo.XzdContractChangeVo;
import org.dromara.xzd.mapper.XzdContractChangeMapper;
import org.dromara.xzd.service.IXzdContractChangeService;
import org.springframework.transaction.annotation.Transactional;
import java.util.Arrays;
import java.util.Collection;
import java.util.List;
import java.util.Map;
import java.util.Collection;
/**
* 承包合同变更Service业务层处理
@ -255,21 +253,6 @@ public class XzdContractChangeServiceImpl extends ServiceImpl<XzdContractChangeM
}
//合同条款-扣款与奖励项
// if (bo.getKkyjlx() != null && !bo.getKkyjlx().isEmpty()) {
// for (XzdDeductionItems advanceInfo : bo.getKkyjlx()) {
// if (old.getKkyjlx() != null && !old.getKkyjlx().isEmpty()) {
// if (!old.getKkyjlx().contains(advanceInfo)) {
// xzdDeductionItemsService.removeById(advanceInfo);
// }
// advanceInfo.setContractDetailsId(update.getId());
// advanceInfo.setTableName(tableName);
// }
// }
// xzdDeductionItemsService.saveOrUpdateBatch(bo.getKkyjlx());
// }else if (old.getKkyjlx() != null && !old.getKkyjlx().isEmpty()){
// xzdDeductionItemsService.removeByIds(old.getKkyjlx());
// }
if (bo.getKkyjlx() != null && !bo.getKkyjlx().isEmpty()){
if (old.getKkyjlx() != null && !old.getKkyjlx().isEmpty()){
xzdDeductionItemsService.removeByIds(old.getKkyjlx());
@ -286,21 +269,6 @@ public class XzdContractChangeServiceImpl extends ServiceImpl<XzdContractChangeM
}
//合同条款-合同条款
// if (bo.getHtkx() != null && !bo.getHtkx().isEmpty()) {
// for (XzdContractClause advanceInfo : bo.getHtkx()) {
// if (old.getHtkx() != null && !old.getHtkx().isEmpty()) {
// if (!old.getHtkx().contains(advanceInfo)) {
// xzdContractClauseService.removeById(advanceInfo);
// }
// advanceInfo.setContractDetailsId(update.getId());
// advanceInfo.setTableName(tableName);
// }
// }
// xzdContractClauseService.saveOrUpdateBatch(bo.getHtkx());
// }else if (old.getHtkx() != null && !old.getHtkx().isEmpty()) {
// xzdContractClauseService.removeByIds(old.getHtkx());
// }
if (bo.getHtkx() != null && !bo.getHtkx().isEmpty()){
if (old.getHtkx() != null && !old.getHtkx().isEmpty()){
xzdContractClauseService.removeByIds(old.getHtkx());
@ -317,30 +285,20 @@ public class XzdContractChangeServiceImpl extends ServiceImpl<XzdContractChangeM
}
//印章信息
// if (bo.getSealInfo() != null && !bo.getSealInfo().isEmpty()) {
// for (XzdBusinessChange sealInfos : bo.getSealInfo()) {
// if (old.getSealInfo() != null && !old.getSealInfo().isEmpty()) {
// if (!old.getSealInfo().contains(sealInfos)) {
// xzdBusinessChangeService.removeById(sealInfos);
// }
// }
// sealInfos.setContractChangeId(update.getId());
// }
// xzdBusinessChangeService.saveOrUpdateBatch(bo.getSealInfo());
// }else if (old.getSealInfo() != null && !old.getSealInfo().isEmpty()) {
// xzdBusinessChangeService.removeByIds(old.getSealInfo());
// }
if (bo.getSealInfo() != null && !bo.getSealInfo().isEmpty()){
if (old.getSealInfo() != null && !old.getSealInfo().isEmpty()){
xzdBusinessChangeService.removeByIds(old.getSealInfo());
}
for (XzdBusinessChange businessChange : bo.getSealInfo()) {
businessChange.setContractChangeId(update.getId());
}
xzdBusinessChangeService.saveBatch(bo.getSealInfo());
}else {
if (old.getSealInfo() != null && !old.getSealInfo().isEmpty()){
xzdBusinessChangeService.removeByIds(old.getSealInfo());
}
}
//合同变更清单
xzdHtglHtbgqdService.remove(new LambdaQueryWrapper<XzdHtglHtbgqd>().eq(XzdHtglHtbgqd::getMainDocumentId,bo.getId()));
if (bo.getHtbgqds() != null && !bo.getHtbgqds().isEmpty()) {
bo.getHtbgqds().forEach(item->{item.setMainDocumentId(bo.getId());});
@ -349,7 +307,7 @@ public class XzdContractChangeServiceImpl extends ServiceImpl<XzdContractChangeM
//更新文件
if (bo.getFileId() != null && !bo.getFileId().isEmpty()){
if (old != null && old.getFileId() != null) {
if (old.getFileId() != null) {
List<Long> oldFileId = Arrays.stream(old.getFileId().split(",")).map(Long::valueOf).toList();
List<Long> nowFileId = Arrays.stream(bo.getFileId().split(",")).map(Long::valueOf).toList();
for (Long fileId : oldFileId) {
@ -504,7 +462,7 @@ public class XzdContractChangeServiceImpl extends ServiceImpl<XzdContractChangeM
}
}
vo.setSealInfo(list2);
//合同变更清单
List<XzdHtglHtbgqd> list4 = xzdHtglHtbgqdService.getBaseMapper().selectList(new LambdaQueryWrapper<XzdHtglHtbgqd>().eq(XzdHtglHtbgqd::getMainDocumentId, vo.getId()));
vo.setHtbgqds(list4);
}

View File

@ -590,6 +590,10 @@ public class XzdProjectServiceImpl extends ServiceImpl<XzdProjectMapper, XzdProj
XzdProjectTypeVo xzdProjectTypeVo = xzdProjectTypeService.queryById(entity.getProjectType());
if (xzdProjectTypeVo != null) {
entity.setProjectTypeName(xzdProjectTypeVo.getTypeName());
XzdProjectTypeVo bigType = xzdProjectTypeService.getBigType(xzdProjectTypeVo.getId());
if (bigType != null){
entity.setXmdl(bigType.getTypeName());
}
}
}

View File

@ -18,7 +18,6 @@ import org.dromara.common.utils.BatchNumberGenerator;
import org.dromara.system.domain.vo.SysUserVo;
import org.dromara.system.service.impl.SysOssServiceImpl;
import org.dromara.system.service.impl.SysUserServiceImpl;
import org.dromara.xzd.contractManagement.purchaseManagement.domain.vo.XzdPurchaseContractInformationVo;
import org.dromara.xzd.domain.*;
import org.dromara.xzd.domain.bo.XzdSupplierInfoBo;
import org.dromara.xzd.domain.vo.XzdCustomertypeVo;
@ -31,6 +30,7 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.*;
import java.util.stream.Collectors;
/**
* 供应商信息Service业务层处理
@ -345,11 +345,29 @@ public class XzdSupplierInfoServiceImpl extends ServiceImpl<XzdSupplierInfoMappe
boolean b = baseMapper.updateById(update) > 0;
//处理资质信息更新
List<XzdSupplierQualification> qualifications = bo.getQualifications();
for (XzdSupplierQualification qualification : qualifications) {
qualification.setSupplierId(update.getId());
if (bo.getQualifications() != null && !bo.getQualifications().isEmpty()){
if (old.getQualifications() != null && !old.getQualifications().isEmpty()){
xzdSupplierQualificationService.removeByIds(old.getQualifications());
}
for (XzdSupplierQualification businessChange : bo.getQualifications()) {
businessChange.setSupplierId(update.getId());
}
xzdSupplierQualificationService.saveBatch(bo.getQualifications());
}else {
if (old.getQualifications() != null && !old.getQualifications().isEmpty()){
//删除绑定的文件
for (XzdSupplierQualification qualification : old.getQualifications()) {
if (qualification.getFileId() != null){
String[] split = qualification.getFileId().split(",");
List<Long> fileIdList = Arrays.stream(split)
.map(Long::valueOf)
.collect(Collectors.toList());
sysOssService.deleteWithValidByIds(fileIdList, false);
}
}
xzdSupplierQualificationService.removeByIds(old.getQualifications());
}
}
xzdSupplierQualificationService.saveOrUpdateBatch(qualifications);
//处理供应商信息补充
if (bo.getSupplement() != null){
@ -510,7 +528,7 @@ public class XzdSupplierInfoServiceImpl extends ServiceImpl<XzdSupplierInfoMappe
List<Long> fileIds = new ArrayList<>();
for (XzdSupplierQualification qualification : list1) {
if (qualification.getFileId() != null){
fileIds.add(qualification.getFileId());
fileIds.add(Long.valueOf(qualification.getFileId()));
}
}
if (!fileIds.isEmpty()){

View File

@ -1,18 +1,17 @@
package org.dromara.xzd.skyfk.fbhtfk.domain.bo;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.dromara.xzd.paymentsReceipts.domain.XzdSfkFapiao;
import org.dromara.xzd.paymentsReceipts.domain.XzdSfkFukuan;
import org.dromara.xzd.paymentsReceipts.domain.bo.XzdSfkFapiaoBo;
import org.dromara.xzd.paymentsReceipts.domain.bo.XzdSfkFukuanBo;
import org.dromara.xzd.skyfk.fbhtfk.domain.XzdSkyfkFbhtfk;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.xzd.paymentsReceipts.domain.XzdSfkFapiao;
import org.dromara.xzd.paymentsReceipts.domain.XzdSfkFukuan;
import org.dromara.xzd.skyfk.fbhtfk.domain.XzdSkyfkFbhtfk;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
@ -292,6 +291,6 @@ public class XzdSkyfkFbhtfkBo extends BaseEntity {
/**
* 付款信息
*/
List<XzdSfkFukuan> fkxx;
private List<XzdSfkFukuan> fkxx;
}