供应商

This commit is contained in:
2025-12-18 18:25:49 +08:00
parent 99f3508cbb
commit ebcd73e42d
26 changed files with 536 additions and 168 deletions

View File

@ -75,5 +75,42 @@ public class UpdateLngCustomerAttrPowerDto implements Serializable {
@ApiModelProperty("租户id") @ApiModelProperty("租户id")
private Long tenantId; private Long tenantId;
/**
* 创建人id
*/
@ApiModelProperty("创建人id")
private Long createUserId;
/**
* 创建时间
*/
@ApiModelProperty("创建时间")
private LocalDateTime createDate;
/**
* 修改人id
*/
@ApiModelProperty("修改人id")
private Long modifyUserId;
/**
* 修改时间
*/
@ApiModelProperty("修改时间")
private LocalDateTime modifyDate;
/**
* 部门id
*/
@ApiModelProperty("部门id")
private Long deptId;
/**
* 数据权限id
*/
@ApiModelProperty("数据权限id")
private Long ruleUserId;
} }

View File

@ -89,5 +89,42 @@ public class UpdateLngCustomerBankDto implements Serializable {
@ApiModelProperty("租户id") @ApiModelProperty("租户id")
private Long tenantId; private Long tenantId;
/**
* 创建人id
*/
@ApiModelProperty("创建人id")
private Long createUserId;
/**
* 创建时间
*/
@ApiModelProperty("创建时间")
private LocalDateTime createDate;
/**
* 修改人id
*/
@ApiModelProperty("修改人id")
private Long modifyUserId;
/**
* 修改时间
*/
@ApiModelProperty("修改时间")
private LocalDateTime modifyDate;
/**
* 部门id
*/
@ApiModelProperty("部门id")
private Long deptId;
/**
* 数据权限id
*/
@ApiModelProperty("数据权限id")
private Long ruleUserId;
} }

View File

@ -96,5 +96,42 @@ public class UpdateLngCustomerContactDto implements Serializable {
@ApiModelProperty("租户id") @ApiModelProperty("租户id")
private Long tenantId; private Long tenantId;
/**
* 创建人id
*/
@ApiModelProperty("创建人id")
private Long createUserId;
/**
* 创建时间
*/
@ApiModelProperty("创建时间")
private LocalDateTime createDate;
/**
* 修改人id
*/
@ApiModelProperty("修改人id")
private Long modifyUserId;
/**
* 修改时间
*/
@ApiModelProperty("修改时间")
private LocalDateTime modifyDate;
/**
* 部门id
*/
@ApiModelProperty("部门id")
private Long deptId;
/**
* 数据权限id
*/
@ApiModelProperty("数据权限id")
private Long ruleUserId;
} }

View File

@ -90,6 +90,44 @@ public class UpdateLngCustomerDocDto implements Serializable {
@ApiModelProperty("租户id") @ApiModelProperty("租户id")
private Long tenantId; private Long tenantId;
/**
* 创建人id
*/
@ApiModelProperty("创建人id")
private Long createUserId;
/**
* 创建时间
*/
@ApiModelProperty("创建时间")
private LocalDateTime createDate;
/**
* 修改人id
*/
@ApiModelProperty("修改人id")
private Long modifyUserId;
/**
* 修改时间
*/
@ApiModelProperty("修改时间")
private LocalDateTime modifyDate;
/**
* 部门id
*/
@ApiModelProperty("部门id")
private Long deptId;
/**
* 数据权限id
*/
@ApiModelProperty("数据权限id")
private Long ruleUserId;
/** /**
* lngFileUpload * lngFileUpload
*/ */

View File

@ -14,7 +14,6 @@ import com.pictc.annotations.datalog.LogJoinColumn;
import com.pictc.annotations.datalog.LogTable; import com.pictc.annotations.datalog.LogTable;
import com.pictc.annotations.datalog.ValueDirectionType; import com.pictc.annotations.datalog.ValueDirectionType;
import com.xjrsoft.module.system.dto.UpdateLngFileUploadDto; import com.xjrsoft.module.system.dto.UpdateLngFileUploadDto;
import com.xjrsoft.module.system.vo.LngFileUploadVo;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
@ -297,4 +296,42 @@ public class UpdateLngCustomerDto implements Serializable {
@ApiModelProperty("lngFileUpload子表") @ApiModelProperty("lngFileUpload子表")
@LogAttrField @LogAttrField
private List<UpdateLngFileUploadDto> lngFileUploadList; private List<UpdateLngFileUploadDto> lngFileUploadList;
/**
* 创建人id
*/
@ApiModelProperty("创建人id")
private Long createUserId;
/**
* 创建时间
*/
@ApiModelProperty("创建时间")
private LocalDateTime createDate;
/**
* 修改人id
*/
@ApiModelProperty("修改人id")
private Long modifyUserId;
/**
* 修改时间
*/
@ApiModelProperty("修改时间")
private LocalDateTime modifyDate;
/**
* 部门id
*/
@ApiModelProperty("部门id")
private Long deptId;
/**
* 数据权限id
*/
@ApiModelProperty("数据权限id")
private Long ruleUserId;
} }

View File

@ -138,5 +138,42 @@ public class UpdateLngScoreDtlDto implements Serializable {
@ApiModelProperty("租户id") @ApiModelProperty("租户id")
private Long tenantId; private Long tenantId;
/**
* 创建人id
*/
@ApiModelProperty("创建人id")
private Long createUserId;
/**
* 创建时间
*/
@ApiModelProperty("创建时间")
private LocalDateTime createDate;
/**
* 修改人id
*/
@ApiModelProperty("修改人id")
private Long modifyUserId;
/**
* 修改时间
*/
@ApiModelProperty("修改时间")
private LocalDateTime modifyDate;
/**
* 部门id
*/
@ApiModelProperty("部门id")
private Long deptId;
/**
* 数据权限id
*/
@ApiModelProperty("数据权限id")
private Long ruleUserId;
} }

View File

@ -95,6 +95,43 @@ public class UpdateLngScoreDto implements Serializable {
@ApiModelProperty("租户id") @ApiModelProperty("租户id")
private Long tenantId; private Long tenantId;
/**
* 创建人id
*/
@ApiModelProperty("创建人id")
private Long createUserId;
/**
* 创建时间
*/
@ApiModelProperty("创建时间")
private LocalDateTime createDate;
/**
* 修改人id
*/
@ApiModelProperty("修改人id")
private Long modifyUserId;
/**
* 修改时间
*/
@ApiModelProperty("修改时间")
private LocalDateTime modifyDate;
/**
* 部门id
*/
@ApiModelProperty("部门id")
private Long deptId;
/**
* 数据权限id
*/
@ApiModelProperty("数据权限id")
private Long ruleUserId;
/** /**
* lngScoreDtl * lngScoreDtl

View File

@ -91,7 +91,7 @@ public class LngScoreDtlVo {
* 实际评分时间 * 实际评分时间
*/ */
@ApiModelProperty("实际评分时间") @ApiModelProperty("实际评分时间")
private Object aTime; private LocalDateTime aTime;
/** /**

View File

@ -4,6 +4,9 @@ import java.math.BigDecimal;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.List; import java.util.List;
import com.xjrsoft.module.supplier.vo.LngScoreDtlVo;
import com.xjrsoft.module.system.vo.LngFileUploadVo;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
@ -120,13 +123,16 @@ public class LngScoreVo {
@ApiModelProperty("数据权限id") @ApiModelProperty("数据权限id")
private Long ruleUserId; private Long ruleUserId;
/** /**
* lngScoreDtl * lngScoreDtl
*/ */
@ApiModelProperty("lngScoreDtl子表") @ApiModelProperty("lngScoreDtl子表")
private List<LngScoreDtlVo> lngScoreDtlList; private List<LngScoreDtlVo> lngScoreDtlList;
/**
* lngFileUpload
*/
@ApiModelProperty("lngFileUpload子表")
private List<LngFileUploadVo> lngFileUploadList;
} }

View File

@ -138,5 +138,42 @@ public class UpdateLngScoreDtlDto implements Serializable {
@ApiModelProperty("租户id") @ApiModelProperty("租户id")
private Long tenantId; private Long tenantId;
/**
* 创建人id
*/
@ApiModelProperty("创建人id")
private Long createUserId;
/**
* 创建时间
*/
@ApiModelProperty("创建时间")
private LocalDateTime createDate;
/**
* 修改人id
*/
@ApiModelProperty("修改人id")
private Long modifyUserId;
/**
* 修改时间
*/
@ApiModelProperty("修改时间")
private LocalDateTime modifyDate;
/**
* 部门id
*/
@ApiModelProperty("部门id")
private Long deptId;
/**
* 数据权限id
*/
@ApiModelProperty("数据权限id")
private Long ruleUserId;
} }

View File

@ -8,11 +8,13 @@ import java.util.List;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import com.pictc.annotations.datalog.JoinCaseType; import com.pictc.annotations.datalog.JoinCaseType;
import com.pictc.annotations.datalog.JoinType; import com.pictc.annotations.datalog.JoinType;
import com.pictc.annotations.datalog.LogAttrField;
import com.pictc.annotations.datalog.LogField; import com.pictc.annotations.datalog.LogField;
import com.pictc.annotations.datalog.LogJoin; import com.pictc.annotations.datalog.LogJoin;
import com.pictc.annotations.datalog.LogJoinColumn; import com.pictc.annotations.datalog.LogJoinColumn;
import com.pictc.annotations.datalog.LogTable; import com.pictc.annotations.datalog.LogTable;
import com.pictc.annotations.datalog.ValueDirectionType; import com.pictc.annotations.datalog.ValueDirectionType;
import com.xjrsoft.module.system.dto.UpdateLngFileUploadDto;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
@ -106,4 +108,11 @@ public class UpdateLngScoreDto implements Serializable {
}, },
caseType = JoinCaseType.FULL, target = UpdateLngScoreDtlDto.class, type = JoinType.MANY) caseType = JoinCaseType.FULL, target = UpdateLngScoreDtlDto.class, type = JoinType.MANY)
private List<UpdateLngScoreDtlDto> lngScoreDtlList; private List<UpdateLngScoreDtlDto> lngScoreDtlList;
/**
* lngFileUpload
*/
@ApiModelProperty("lngFileUpload子表")
@LogAttrField
private List<UpdateLngFileUploadDto> lngFileUploadList;
} }

View File

@ -89,5 +89,42 @@ public class UpdateLngSupplierBankDto implements Serializable {
@ApiModelProperty("租户id") @ApiModelProperty("租户id")
private Long tenantId; private Long tenantId;
/**
* 创建人id
*/
@ApiModelProperty("创建人id")
private Long createUserId;
/**
* 创建时间
*/
@ApiModelProperty("创建时间")
private LocalDateTime createDate;
/**
* 修改人id
*/
@ApiModelProperty("修改人id")
private Long modifyUserId;
/**
* 修改时间
*/
@ApiModelProperty("修改时间")
private LocalDateTime modifyDate;
/**
* 部门id
*/
@ApiModelProperty("部门id")
private Long deptId;
/**
* 数据权限id
*/
@ApiModelProperty("数据权限id")
private Long ruleUserId;
} }

View File

@ -104,4 +104,44 @@ public class UpdateLngSupplierDocDto implements Serializable {
@LogAttrField @LogAttrField
private List<UpdateLngFileUploadDto> fileList; private List<UpdateLngFileUploadDto> fileList;
/**
* 创建人id
*/
@ApiModelProperty("创建人id")
private Long createUserId;
/**
* 创建时间
*/
@ApiModelProperty("创建时间")
private LocalDateTime createDate;
/**
* 修改人id
*/
@ApiModelProperty("修改人id")
private Long modifyUserId;
/**
* 修改时间
*/
@ApiModelProperty("修改时间")
private LocalDateTime modifyDate;
/**
* 部门id
*/
@ApiModelProperty("部门id")
private Long deptId;
/**
* 数据权限id
*/
@ApiModelProperty("数据权限id")
private Long ruleUserId;
} }

View File

@ -230,4 +230,40 @@ public class UpdateLngSupplierDto implements Serializable {
@ApiModelProperty("lngFileUpload子表") @ApiModelProperty("lngFileUpload子表")
@LogAttrField @LogAttrField
private List<UpdateLngFileUploadDto> lngFileUploadList; private List<UpdateLngFileUploadDto> lngFileUploadList;
/**
* 创建人id
*/
@ApiModelProperty("创建人id")
private Long createUserId;
/**
* 创建时间
*/
@ApiModelProperty("创建时间")
private LocalDateTime createDate;
/**
* 修改人id
*/
@ApiModelProperty("修改人id")
private Long modifyUserId;
/**
* 修改时间
*/
@ApiModelProperty("修改时间")
private LocalDateTime modifyDate;
/**
* 部门id
*/
@ApiModelProperty("部门id")
private Long deptId;
/**
* 数据权限id
*/
@ApiModelProperty("数据权限id")
private Long ruleUserId;
} }

View File

@ -1,13 +1,11 @@
package com.xjrsoft.module.supplier.vo; package com.xjrsoft.module.supplier.vo;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import java.time.LocalTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.util.List;
/** /**
* @title: 表单出参 * @title: 表单出参
* @Author 管理员 * @Author 管理员
@ -91,7 +89,7 @@ public class LngScoreDtlVo {
* 实际评分时间 * 实际评分时间
*/ */
@ApiModelProperty("实际评分时间") @ApiModelProperty("实际评分时间")
private Object aTime; private LocalDateTime aTime;
/** /**

View File

@ -85,8 +85,7 @@ public class BankController {
// .like(StrUtil.isNotBlank(dto.getFullName()),LngBBank::getFullName,dto.getFullName()) // .like(StrUtil.isNotBlank(dto.getFullName()),LngBBank::getFullName,dto.getFullName())
.like(StrUtil.isNotBlank(dto.getCode()),LngBBank::getCode,dto.getCode()) .like(StrUtil.isNotBlank(dto.getCode()),LngBBank::getCode,dto.getCode())
.like(StrUtil.isNotBlank(dto.getSwift()),LngBBank::getSwift,dto.getSwift()) .like(StrUtil.isNotBlank(dto.getSwift()),LngBBank::getSwift,dto.getSwift())
.orderByAsc(LngBBank::getSort,LngBBank::getCode) .orderByAsc(LngBBank::getSort,LngBBank::getCode);
.select(LngBBank.class,x -> VoToColumnUtil.fieldsToColumns(LngBBankPageVo.class).contains(x.getProperty()));
IPage<LngBBank> page = bankService.page(ConventPage.getPage(dto), queryWrapper); IPage<LngBBank> page = bankService.page(ConventPage.getPage(dto), queryWrapper);
PageOutput<LngBBankPageVo> pageOutput = ConventPage.getPageOutput(page, LngBBankPageVo.class); PageOutput<LngBBankPageVo> pageOutput = ConventPage.getPageOutput(page, LngBBankPageVo.class);
return R.ok(pageOutput); return R.ok(pageOutput);

View File

@ -70,11 +70,10 @@ public class CustomerController {
.like(StrUtil.isNotBlank(dto.getClassCode()),LngCustomer::getClassCode,dto.getClassCode()) .like(StrUtil.isNotBlank(dto.getClassCode()),LngCustomer::getClassCode,dto.getClassCode())
.like(StrUtil.isNotBlank(dto.getTypeCode()),LngCustomer::getTypeCode,dto.getTypeCode()) .like(StrUtil.isNotBlank(dto.getTypeCode()),LngCustomer::getTypeCode,dto.getTypeCode())
.like(StrUtil.isNotBlank(dto.getNatureCode()),LngCustomer::getNatureCode,dto.getNatureCode()) .like(StrUtil.isNotBlank(dto.getNatureCode()),LngCustomer::getNatureCode,dto.getNatureCode())
.like(StrUtil.isNotBlank(dto.getValid()),LngCustomer::getValid,dto.getValid()) .eq(StrUtil.isNotBlank(dto.getValid()),LngCustomer::getValid,dto.getValid())
.like(StrUtil.isNotBlank(dto.getApproCode()),LngCustomer::getApproCode,dto.getApproCode()) .like(StrUtil.isNotBlank(dto.getApproCode()),LngCustomer::getApproCode,dto.getApproCode())
.orderByDesc(LngCustomer::getId) .orderByAsc(LngCustomer::getCuCode);
.select(LngCustomer.class,x -> VoToColumnUtil.fieldsToColumns(LngCustomerPageVo.class).contains(x.getProperty())); IPage<LngCustomer> page = customerService.page(ConventPage.getPage(dto), queryWrapper);
IPage<LngCustomer> page = customerService.page(ConventPage.getPage(dto), queryWrapper);
PageOutput<LngCustomerPageVo> pageOutput = ConventPage.getPageOutput(page, LngCustomerPageVo.class); PageOutput<LngCustomerPageVo> pageOutput = ConventPage.getPageOutput(page, LngCustomerPageVo.class);
return R.ok(pageOutput); return R.ok(pageOutput);
} }
@ -105,27 +104,6 @@ public class CustomerController {
UpdateLngCustomerDto obj = dataService.insert(dto); UpdateLngCustomerDto obj = dataService.insert(dto);
codeRuleClient.useEncode(CUSTOMER_CODE); codeRuleClient.useEncode(CUSTOMER_CODE);
return R.ok(obj); return R.ok(obj);
/**
return R.ok(dataService.insert(dto,new DataOperationListener<UpdateLngCustomerDto>() {
@Override
public UpdateLngCustomerDto before(DataOperationContent<UpdateLngCustomerDto> content) {
return content.getObj();
}
@Override
public UpdateLngCustomerDto after(DataOperationContent<UpdateLngCustomerDto> content) {
String msg = CommonCallUtils.saveAfter(content.getTableName(),content.getIdValue());
if (StringUtils.isNotEmpty(msg)) {
throw new BusinessException(BusinessCode.ofArgs(ExceptionCommonCode.DB_FUNCTION_EXEC_ERROR, msg));
}
codeRuleClient.useEncode(CUSTOMER_CODE);
return content.getObj();
}
}));
**/
} }

View File

@ -65,8 +65,7 @@ public class CustomerScoreController {
.eq(ObjectUtil.isNotNull(dto.getScore()),LngScore::getScore,dto.getScore()) .eq(ObjectUtil.isNotNull(dto.getScore()),LngScore::getScore,dto.getScore())
.like(StrUtil.isNotBlank(dto.getApproCode()),LngScore::getApproCode,dto.getApproCode()) .like(StrUtil.isNotBlank(dto.getApproCode()),LngScore::getApproCode,dto.getApproCode())
.like(StrUtil.isNotBlank(dto.getNote()),LngScore::getNote,dto.getNote()) .like(StrUtil.isNotBlank(dto.getNote()),LngScore::getNote,dto.getNote())
.orderByDesc(LngScore::getId) .orderByDesc(LngScore::getId);
.select(LngScore.class,x -> VoToColumnUtil.fieldsToColumns(LngScorePageVo.class).contains(x.getProperty()));
IPage<LngScore> page = scoreCustomerService.page(ConventPage.getPage(dto), queryWrapper); IPage<LngScore> page = scoreCustomerService.page(ConventPage.getPage(dto), queryWrapper);
PageOutput<LngScorePageVo> pageOutput = ConventPage.getPageOutput(page, LngScorePageVo.class); PageOutput<LngScorePageVo> pageOutput = ConventPage.getPageOutput(page, LngScorePageVo.class);
return R.ok(pageOutput); return R.ok(pageOutput);

View File

@ -1,9 +1,10 @@
package com.xjrsoft.module.sales.mapper; package com.xjrsoft.module.sales.mapper;
import org.apache.ibatis.annotations.Mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.github.yulichang.base.MPJBaseMapper; import com.github.yulichang.base.MPJBaseMapper;
import com.xjrsoft.module.sales.entity.LngScore; import com.xjrsoft.module.sales.entity.LngScore;
import org.apache.ibatis.annotations.Mapper;
/** /**
* @title: mapper * @title: mapper

View File

@ -5,6 +5,8 @@ import com.github.yulichang.base.MPJBaseService;
import com.github.yulichang.extension.mapping.base.MPJDeepService; import com.github.yulichang.extension.mapping.base.MPJDeepService;
import com.github.yulichang.extension.mapping.base.MPJRelationService; import com.github.yulichang.extension.mapping.base.MPJRelationService;
import com.xjrsoft.module.sales.entity.LngScore; import com.xjrsoft.module.sales.entity.LngScore;
import com.xjrsoft.module.sales.vo.LngScoreVo;
import lombok.Data; import lombok.Data;
import java.util.List; import java.util.List;
@ -16,21 +18,7 @@ import java.util.List;
*/ */
public interface IScoreCustomerService extends MPJBaseService<LngScore>, MPJDeepService<LngScore>, MPJRelationService<LngScore> { public interface IScoreCustomerService extends MPJBaseService<LngScore>, MPJDeepService<LngScore>, MPJRelationService<LngScore> {
/**
* 新增
*
* @param lngScore
* @return
*/
Boolean add(LngScore lngScore);
/**
* 更新
*
* @param lngScore
* @return
*/
Boolean update(LngScore lngScore);
/** /**
* 删除 * 删除
@ -39,4 +27,6 @@ public interface IScoreCustomerService extends MPJBaseService<LngScore>, MPJDeep
* @return * @return
*/ */
Boolean delete(List<Long> ids); Boolean delete(List<Long> ids);
LngScoreVo getInfoById(Long id);
} }

View File

@ -0,0 +1,64 @@
package com.xjrsoft.module.sales.service.impl;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.github.yulichang.base.MPJBaseServiceImpl;
import com.xjrsoft.module.sales.entity.LngCustomer;
import com.xjrsoft.module.sales.entity.LngScore;
import com.xjrsoft.module.sales.entity.LngScoreDtl;
import com.xjrsoft.module.sales.mapper.LngCustomerScoreDtlMapper;
import com.xjrsoft.module.sales.mapper.LngCustomerScoreMapper;
import com.xjrsoft.module.sales.service.IScoreCustomerService;
import com.xjrsoft.module.sales.vo.LngCustomerDocVo;
import com.xjrsoft.module.sales.vo.LngCustomerVo;
import com.xjrsoft.module.sales.vo.LngScoreVo;
import com.xjrsoft.module.system.client.IFileClient;
import com.xjrsoft.module.system.vo.LngFileUploadVo;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollectionUtil;
import lombok.AllArgsConstructor;
/**
* @title: service
* @Author 管理员
* @Date: 2025-12-17
* @Version 1.0
*/
@Service
@AllArgsConstructor
public class CustomerScoreServiceImpl extends MPJBaseServiceImpl<LngCustomerScoreMapper, LngScore> implements IScoreCustomerService {
private final LngCustomerScoreMapper scoreCustomerLngScoreMapper;
private final LngCustomerScoreDtlMapper scoreCustomerLngScoreDtlMapper;
private final IFileClient fileClient;
@Override
@Transactional(rollbackFor = Exception.class)
public Boolean delete(List<Long> ids) {
scoreCustomerLngScoreMapper.deleteBatchIds(ids);
scoreCustomerLngScoreDtlMapper.delete(Wrappers.lambdaQuery(LngScoreDtl.class).in(LngScoreDtl::getSId, ids));
return true;
}
@Override
public LngScoreVo getInfoById(Long id) {
LngScore lngScore = this.getByIdDeep(id);
if(lngScore == null) {
return null;
}
LngScoreVo vo = BeanUtil.toBean(lngScore, LngScoreVo.class);
List<LngFileUploadVo> fileList = fileClient.getTableFiles("lng_score", "lngFileUploadList", vo.getId());
vo.setLngFileUploadList(fileList);
return vo;
}
}

View File

@ -1,88 +0,0 @@
package com.xjrsoft.module.sales.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.yulichang.base.MPJBaseServiceImpl;
import com.xjrsoft.module.sales.entity.LngScoreDtl;
import com.xjrsoft.module.sales.mapper.LngCustomerScoreDtlMapper;
import com.xjrsoft.module.sales.entity.LngScore;
import com.xjrsoft.module.sales.mapper.LngCustomerScoreMapper;
import com.xjrsoft.module.sales.service.IScoreCustomerService;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
/**
* @title: service
* @Author 管理员
* @Date: 2025-12-17
* @Version 1.0
*/
@Service
@AllArgsConstructor
public class ScoreCustomerServiceImpl extends MPJBaseServiceImpl<LngCustomerScoreMapper, LngScore> implements IScoreCustomerService {
private final LngCustomerScoreMapper scoreCustomerLngScoreMapper;
private final LngCustomerScoreDtlMapper scoreCustomerLngScoreDtlMapper;
@Override
@Transactional(rollbackFor = Exception.class)
public Boolean add(LngScore lngScore) {
scoreCustomerLngScoreMapper.insert(lngScore);
for (LngScoreDtl lngScoreDtl : lngScore.getLngScoreDtlList()) {
lngScoreDtl.setSId(lngScore.getId());
scoreCustomerLngScoreDtlMapper.insert(lngScoreDtl);
}
return true;
}
@Override
@Transactional(rollbackFor = Exception.class)
public Boolean update(LngScore lngScore) {
scoreCustomerLngScoreMapper.updateById(lngScore);
//********************************* LngScoreDtl 增删改 开始 *******************************************/
{
// 查出所有子级的id
List<LngScoreDtl> lngScoreDtlList = scoreCustomerLngScoreDtlMapper.selectList(Wrappers.lambdaQuery(LngScoreDtl.class).eq(LngScoreDtl::getSId, lngScore.getId()).select(LngScoreDtl::getId));
List<Long> lngScoreDtlIds = lngScoreDtlList.stream().map(LngScoreDtl::getId).collect(Collectors.toList());
//原有子表单 没有被删除的主键
List<Long> lngScoreDtlOldIds = lngScore.getLngScoreDtlList().stream().map(LngScoreDtl::getId).filter(Objects::nonNull).collect(Collectors.toList());
//找到需要删除的id
List<Long> lngScoreDtlRemoveIds = lngScoreDtlIds.stream().filter(item -> !lngScoreDtlOldIds.contains(item)).collect(Collectors.toList());
for (LngScoreDtl lngScoreDtl : lngScore.getLngScoreDtlList()) {
//如果不等于空则修改
if (lngScoreDtl.getId() != null) {
scoreCustomerLngScoreDtlMapper.updateById(lngScoreDtl);
}
//如果等于空 则新增
else {
//已经不存在的id 删除
lngScoreDtl.setSId(lngScore.getId());
scoreCustomerLngScoreDtlMapper.insert(lngScoreDtl);
}
}
//已经不存在的id 删除
if(lngScoreDtlRemoveIds.size() > 0){
scoreCustomerLngScoreDtlMapper.deleteBatchIds(lngScoreDtlRemoveIds);
}
}
//********************************* LngScoreDtl 增删改 结束 *******************************************/
return true;
}
@Override
@Transactional(rollbackFor = Exception.class)
public Boolean delete(List<Long> ids) {
scoreCustomerLngScoreMapper.deleteBatchIds(ids);
scoreCustomerLngScoreDtlMapper.delete(Wrappers.lambdaQuery(LngScoreDtl.class).in(LngScoreDtl::getSId, ids));
return true;
}
}

View File

@ -21,17 +21,14 @@ import com.xjrsoft.common.page.PageOutput;
import com.xjrsoft.common.utils.VoToColumnUtil; import com.xjrsoft.common.utils.VoToColumnUtil;
import com.xjrsoft.module.datalog.service.DatalogService; import com.xjrsoft.module.datalog.service.DatalogService;
import com.xjrsoft.module.datalog.vo.DataChangeLogVo; import com.xjrsoft.module.datalog.vo.DataChangeLogVo;
import com.xjrsoft.module.sales.dto.UpdateLngCustomerDto;
import com.xjrsoft.module.supplier.dto.LngSupplierPageDto; import com.xjrsoft.module.supplier.dto.LngSupplierPageDto;
import com.xjrsoft.module.supplier.dto.UpdateLngSupplierDto; import com.xjrsoft.module.supplier.dto.UpdateLngSupplierDto;
import com.xjrsoft.module.supplier.entity.LngSupplier; import com.xjrsoft.module.supplier.entity.LngSupplier;
import com.xjrsoft.module.supplier.service.ISupplierService; import com.xjrsoft.module.supplier.service.ISupplierService;
import com.xjrsoft.module.supplier.vo.LngSupplierPageVo; import com.xjrsoft.module.supplier.vo.LngSupplierPageVo;
import com.xjrsoft.module.supplier.vo.LngSupplierVo;
import com.xjrsoft.module.system.client.ICodeRuleClient; import com.xjrsoft.module.system.client.ICodeRuleClient;
import cn.dev33.satoken.annotation.SaCheckPermission; import cn.dev33.satoken.annotation.SaCheckPermission;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
@ -73,8 +70,7 @@ public class SupplierController {
.like(StrUtil.isNotBlank(dto.getDI()),LngSupplier::getDI,dto.getDI()) .like(StrUtil.isNotBlank(dto.getDI()),LngSupplier::getDI,dto.getDI())
.eq(StrUtil.isNotBlank(dto.getValid()),LngSupplier::getValid,dto.getValid()) .eq(StrUtil.isNotBlank(dto.getValid()),LngSupplier::getValid,dto.getValid())
.like(StrUtil.isNotBlank(dto.getApproCode()),LngSupplier::getApproCode,dto.getApproCode()) .like(StrUtil.isNotBlank(dto.getApproCode()),LngSupplier::getApproCode,dto.getApproCode())
.orderByDesc(LngSupplier::getId) .orderByDesc(LngSupplier::getSuCode);
.select(LngSupplier.class,x -> VoToColumnUtil.fieldsToColumns(LngSupplierPageVo.class).contains(x.getProperty()));
IPage<LngSupplier> page = supplierService.page(ConventPage.getPage(dto), queryWrapper); IPage<LngSupplier> page = supplierService.page(ConventPage.getPage(dto), queryWrapper);
PageOutput<LngSupplierPageVo> pageOutput = ConventPage.getPageOutput(page, LngSupplierPageVo.class); PageOutput<LngSupplierPageVo> pageOutput = ConventPage.getPageOutput(page, LngSupplierPageVo.class);
return R.ok(pageOutput); return R.ok(pageOutput);

View File

@ -46,7 +46,7 @@ import lombok.AllArgsConstructor;
@RequestMapping("/supplier" + "/scoreSupplier") @RequestMapping("/supplier" + "/scoreSupplier")
@Api(value = "/supplier" + "/scoreSupplier",tags = "供应商评价代码") @Api(value = "/supplier" + "/scoreSupplier",tags = "供应商评价代码")
@AllArgsConstructor @AllArgsConstructor
public class ScoreSupplierController { public class SupplierScoreController {
private final IScoreSupplierService scoreSupplierService; private final IScoreSupplierService scoreSupplierService;

View File

@ -1,20 +1,24 @@
package com.xjrsoft.module.supplier.entity; package com.xjrsoft.module.supplier.entity;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;
import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.Version; import com.baomidou.mybatisplus.annotation.TableName;
import com.github.yulichang.annotation.EntityMapping; import com.github.yulichang.annotation.EntityMapping;
import com.pictc.annotations.datalog.JoinCaseType;
import com.pictc.annotations.datalog.JoinType;
import com.pictc.annotations.datalog.LogJoin;
import com.pictc.annotations.datalog.LogJoinColumn;
import com.pictc.annotations.datalog.ValueDirectionType;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import java.io.Serializable;
import java.time.LocalTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.util.List;
/** /**
@ -134,6 +138,11 @@ public class LngScore implements Serializable {
@ApiModelProperty("lngScoreDtl子表") @ApiModelProperty("lngScoreDtl子表")
@TableField(exist = false) @TableField(exist = false)
@EntityMapping(thisField = "id", joinField = "sId") @EntityMapping(thisField = "id", joinField = "sId")
@LogJoin(name = "客户联系人信息",
columns = {
@LogJoinColumn(field = "id",relatedField = "sId", valueDirection = ValueDirectionType.RIGHT)
}, caseType = JoinCaseType.FULL, target = LngScoreDtl.class, type = JoinType.MANY)
private List<LngScoreDtl> lngScoreDtlList; private List<LngScoreDtl> lngScoreDtlList;
} }

View File

@ -1,20 +1,17 @@
package com.xjrsoft.module.supplier.entity; package com.xjrsoft.module.supplier.entity;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.Version; import com.baomidou.mybatisplus.annotation.TableName;
import com.github.yulichang.annotation.EntityMapping;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import java.io.Serializable;
import java.time.LocalTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.util.List;
/** /**
@ -95,7 +92,7 @@ public class LngScoreDtl implements Serializable {
* 实际评分时间 * 实际评分时间
*/ */
@ApiModelProperty("实际评分时间") @ApiModelProperty("实际评分时间")
private Object aTime; private LocalDateTime aTime;
/** /**
* 分数 * 分数