This commit is contained in:
张秉卓
2025-12-26 11:14:20 +08:00
parent dee609fe5d
commit efeb6689a3
8 changed files with 46 additions and 167 deletions

View File

@ -1,5 +1,6 @@
package com.xjrsoft.module.contract.vo;
import com.xjrsoft.module.system.vo.LngFileUploadVo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@ -281,4 +282,9 @@ public class LngContractFactVo {
@ApiModelProperty("lngContractApproRel子表")
private List<LngContractApproRelVo> lngContractApproRelList;
/**
* lngFileUpload
*/
@ApiModelProperty("lngFileUpload子表")
private List<LngFileUploadVo> lngFileUploadList;
}

View File

@ -5,8 +5,6 @@ import com.pictc.annotations.datalog.LogTable;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
@ -18,7 +16,7 @@ import java.io.Serializable;
*/
@Data
@LogTable(source="lng_customer_group_customer",name="客户组-客户")
public class UpdateLngCustomerGroupCustomerDto extends com.xjrsoft.common.model.base.BaseModel {
public class UpdateLngCustomerGroupCustomerDto {
private static final long serialVersionUID = 1L;

View File

@ -2,7 +2,6 @@ package com.xjrsoft.module.sales.dto;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.pictc.annotations.datalog.*;
import com.xjrsoft.common.model.base.BaseModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@ -19,7 +18,7 @@ import java.util.List;
*/
@Data
@LogTable(source="lng_customer_group",name="客户组")
public class UpdateLngCustomerGroupDto extends BaseModel {
public class UpdateLngCustomerGroupDto {
private static final long serialVersionUID = 1L;

View File

@ -6,7 +6,6 @@ import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
@ -70,30 +69,6 @@ public class UpdateLngGradeSystemItemDto implements Serializable {
@ApiModelProperty("备注")
private String note;
/**
* 创建人id
*/
@ApiModelProperty("创建人id")
private Long createUserId;
/**
* 创建时间
*/
@ApiModelProperty("创建时间")
private LocalDateTime createDate;
/**
* 修改人id
*/
@ApiModelProperty("修改人id")
private Long modifyUserId;
/**
* 修改时间
*/
@ApiModelProperty("修改时间")
private LocalDateTime modifyDate;
/**
* 租户id
*/
@ -101,17 +76,5 @@ public class UpdateLngGradeSystemItemDto implements Serializable {
@ApiModelProperty("租户id")
private Long tenantId;
/**
* 部门id
*/
@ApiModelProperty("部门id")
private Long deptId;
/**
* 数据权限id
*/
@ApiModelProperty("数据权限id")
private Long ruleUserId;
}

View File

@ -1,7 +1,6 @@
package com.xjrsoft.module.contract.controller;
import cn.dev33.satoken.annotation.SaCheckPermission;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
@ -24,7 +23,6 @@ import com.xjrsoft.module.contract.dto.UpdateLngContractFactDto;
import com.xjrsoft.module.contract.entity.LngContractFact;
import com.xjrsoft.module.contract.service.IContractFactService;
import com.xjrsoft.module.contract.vo.LngContractFactPageVo;
import com.xjrsoft.module.contract.vo.LngContractFactVo;
import com.xjrsoft.module.datalog.service.DatalogService;
import com.xjrsoft.module.datalog.vo.DataChangeLogVo;
import io.swagger.annotations.Api;
@ -90,11 +88,7 @@ public class ContractFactController {
@ApiOperation(value="根据id查询LngContractFact信息")
@SaCheckPermission("contractFact:detail")
public R info(@RequestParam Long id){
LngContractFact lngContractFact = contractFactService.getByIdDeep(id);
if (lngContractFact == null) {
return R.error("找不到此数据!");
}
return R.ok(BeanUtil.toBean(lngContractFact, LngContractFactVo.class));
return R.ok(contractFactService.getInfoById(id));
}
@GetMapping(value = "/datalog")

View File

@ -4,8 +4,7 @@ import com.github.yulichang.base.MPJBaseService;
import com.github.yulichang.extension.mapping.base.MPJDeepService;
import com.github.yulichang.extension.mapping.base.MPJRelationService;
import com.xjrsoft.module.contract.entity.LngContractFact;
import java.util.List;
import com.xjrsoft.module.contract.vo.LngContractFactVo;
/**
* @title: service
@ -15,27 +14,6 @@ import java.util.List;
*/
public interface IContractFactService extends MPJBaseService<LngContractFact>, MPJDeepService<LngContractFact>, MPJRelationService<LngContractFact> {
/**
* 新增
*
* @param lngContractFact
* @return
*/
Boolean add(LngContractFact lngContractFact);
/**
* 更新
*
* @param lngContractFact
* @return
*/
Boolean update(LngContractFact lngContractFact);
/**
* 删除
*
* @param ids
* @return
*/
Boolean delete(List<Long> ids);
LngContractFactVo getInfoById(Long id);
}

View File

@ -1,7 +1,10 @@
package com.xjrsoft.module.contract.service.impl;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.github.yulichang.base.MPJBaseServiceImpl;
import com.pictc.enums.BusinessCode;
import com.xjrsoft.common.exception.BusinessException;
import com.xjrsoft.module.contract.entity.LngContractApproRel;
import com.xjrsoft.module.contract.entity.LngContractFact;
import com.xjrsoft.module.contract.entity.LngContractFactCp;
@ -9,13 +12,16 @@ import com.xjrsoft.module.contract.mapper.LngContractApproRelMapper;
import com.xjrsoft.module.contract.mapper.LngContractFactCpMapper;
import com.xjrsoft.module.contract.mapper.LngContractFactMapper;
import com.xjrsoft.module.contract.service.IContractFactService;
import com.xjrsoft.module.contract.vo.LngContractApproRelVo;
import com.xjrsoft.module.contract.vo.LngContractFactCpVo;
import com.xjrsoft.module.contract.vo.LngContractFactVo;
import com.xjrsoft.module.system.client.IFileClient;
import com.xjrsoft.module.system.vo.LngFileUploadVo;
import lombok.AllArgsConstructor;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
/**
* @title: service
@ -26,100 +32,34 @@ import java.util.stream.Collectors;
@Service
@AllArgsConstructor
public class ContractFactServiceImpl extends MPJBaseServiceImpl<LngContractFactMapper, LngContractFact> implements IContractFactService {
private final LngContractFactMapper contractFactLngContractFactMapper;
private final LngContractFactCpMapper contractFactLngContractFactCpMapper;
private final LngContractApproRelMapper contractFactLngContractApproRelMapper;
private final LngContractFactCpMapper lngContractFactCpMapper;
private final LngContractApproRelMapper lngContractApproRelMapper;
private final IFileClient fileClient;
@Override
@Transactional(rollbackFor = Exception.class)
public Boolean add(LngContractFact lngContractFact) {
contractFactLngContractFactMapper.insert(lngContractFact);
for (LngContractFactCp lngContractFactCp : lngContractFact.getLngContractFactCpList()) {
lngContractFactCp.setKFactId(lngContractFact.getId());
contractFactLngContractFactCpMapper.insert(lngContractFactCp);
}
for (LngContractApproRel lngContractApproRel : lngContractFact.getLngContractApproRelList()) {
lngContractApproRel.setTableId(lngContractFact.getId());
contractFactLngContractApproRelMapper.insert(lngContractApproRel);
}
public LngContractFactVo getInfoById(Long id) {
LngContractFact lngContractFact = this.getById(id);
if(lngContractFact == null) {
new BusinessException(BusinessCode.of(10500,"找不到此数据"));
return true;
}
@Override
@Transactional(rollbackFor = Exception.class)
public Boolean update(LngContractFact lngContractFact) {
contractFactLngContractFactMapper.updateById(lngContractFact);
//********************************* LngContractFactCp 增删改 开始 *******************************************/
{
// 查出所有子级的id
List<LngContractFactCp> lngContractFactCpList = contractFactLngContractFactCpMapper.selectList(Wrappers.lambdaQuery(LngContractFactCp.class).eq(LngContractFactCp::getKFactId, lngContractFact.getId()).select(LngContractFactCp::getId));
List<Long> lngContractFactCpIds = lngContractFactCpList.stream().map(LngContractFactCp::getId).collect(Collectors.toList());
//原有子表单 没有被删除的主键
List<Long> lngContractFactCpOldIds = lngContractFact.getLngContractFactCpList().stream().map(LngContractFactCp::getId).filter(Objects::nonNull).collect(Collectors.toList());
//找到需要删除的id
List<Long> lngContractFactCpRemoveIds = lngContractFactCpIds.stream().filter(item -> !lngContractFactCpOldIds.contains(item)).collect(Collectors.toList());
for (LngContractFactCp lngContractFactCp : lngContractFact.getLngContractFactCpList()) {
//如果不等于空则修改
if (lngContractFactCp.getId() != null) {
contractFactLngContractFactCpMapper.updateById(lngContractFactCp);
LngContractFactVo vo = BeanUtil.toBean(lngContractFact, LngContractFactVo.class);
List<LngContractFactCp> lngContractFactCpList = lngContractFactCpMapper.selectList(
new LambdaQueryWrapper<LngContractFactCp>()
.eq(LngContractFactCp::getKFactId, lngContractFact.getId()));
if (CollectionUtils.isNotEmpty(lngContractFactCpList)) {
vo.setLngContractFactCpList(BeanUtil.copyToList(lngContractFactCpList, LngContractFactCpVo.class));
}
//如果等于空 则新增
else {
//已经不存在的id 删除
lngContractFactCp.setKFactId(lngContractFact.getId());
contractFactLngContractFactCpMapper.insert(lngContractFactCp);
}
}
//已经不存在的id 删除
if(lngContractFactCpRemoveIds.size() > 0){
contractFactLngContractFactCpMapper.deleteBatchIds(lngContractFactCpRemoveIds);
}
}
//********************************* LngContractFactCp 增删改 结束 *******************************************/
//********************************* LngContractApproRel 增删改 开始 *******************************************/
{
// 查出所有子级的id
List<LngContractApproRel> lngContractApproRelList = contractFactLngContractApproRelMapper.selectList(Wrappers.lambdaQuery(LngContractApproRel.class).eq(LngContractApproRel::getTableId, lngContractFact.getId()).select(LngContractApproRel::getId));
List<Long> lngContractApproRelIds = lngContractApproRelList.stream().map(LngContractApproRel::getId).collect(Collectors.toList());
//原有子表单 没有被删除的主键
List<Long> lngContractApproRelOldIds = lngContractFact.getLngContractApproRelList().stream().map(LngContractApproRel::getId).filter(Objects::nonNull).collect(Collectors.toList());
//找到需要删除的id
List<Long> lngContractApproRelRemoveIds = lngContractApproRelIds.stream().filter(item -> !lngContractApproRelOldIds.contains(item)).collect(Collectors.toList());
for (LngContractApproRel lngContractApproRel : lngContractFact.getLngContractApproRelList()) {
//如果不等于空则修改
if (lngContractApproRel.getId() != null) {
contractFactLngContractApproRelMapper.updateById(lngContractApproRel);
}
//如果等于空 则新增
else {
//已经不存在的id 删除
lngContractApproRel.setTableId(lngContractFact.getId());
contractFactLngContractApproRelMapper.insert(lngContractApproRel);
}
}
//已经不存在的id 删除
if(lngContractApproRelRemoveIds.size() > 0){
contractFactLngContractApproRelMapper.deleteBatchIds(lngContractApproRelRemoveIds);
}
}
//********************************* LngContractApproRel 增删改 结束 *******************************************/
return true;
}
@Override
@Transactional(rollbackFor = Exception.class)
public Boolean delete(List<Long> ids) {
contractFactLngContractFactMapper.deleteBatchIds(ids);
contractFactLngContractFactCpMapper.delete(Wrappers.lambdaQuery(LngContractFactCp.class).in(LngContractFactCp::getKFactId, ids));
contractFactLngContractApproRelMapper.delete(Wrappers.lambdaQuery(LngContractApproRel.class).in(LngContractApproRel::getTableId, ids));
return true;
List<LngContractApproRel> lngContractApproRelList = lngContractApproRelMapper.selectList(
new LambdaQueryWrapper<LngContractApproRel>()
.eq(LngContractApproRel::getTableId, lngContractFact.getId()));
if (CollectionUtils.isNotEmpty(lngContractApproRelList)) {
vo.setLngContractApproRelList(BeanUtil.copyToList(lngContractApproRelList, LngContractApproRelVo.class));
}
List<LngFileUploadVo> fileList = fileClient.getTableFiles("lng_contract_fact",
"lngFileUploadList", vo.getId());
vo.setLngFileUploadList(fileList);
return vo;
}
}

View File

@ -39,7 +39,8 @@ public class ApproServiceImpl extends ServiceImpl<LngApproMapper, LngAppro> impl
}
LngApproVo vo = BeanUtil.toBean(lngAppro, LngApproVo.class);
List<LngFileUploadVo> fileList = fileClient.getTableFiles("lng_appro", "lngFileUploadList", vo.getId());
List<LngFileUploadVo> fileList = fileClient.getTableFiles("lng_appro",
"lngFileUploadList", vo.getId());
vo.setLngFileUploadList(fileList);
return vo;
}