供应商
This commit is contained in:
@ -85,8 +85,7 @@ public class BankController {
|
||||
// .like(StrUtil.isNotBlank(dto.getFullName()),LngBBank::getFullName,dto.getFullName())
|
||||
.like(StrUtil.isNotBlank(dto.getCode()),LngBBank::getCode,dto.getCode())
|
||||
.like(StrUtil.isNotBlank(dto.getSwift()),LngBBank::getSwift,dto.getSwift())
|
||||
.orderByAsc(LngBBank::getSort,LngBBank::getCode)
|
||||
.select(LngBBank.class,x -> VoToColumnUtil.fieldsToColumns(LngBBankPageVo.class).contains(x.getProperty()));
|
||||
.orderByAsc(LngBBank::getSort,LngBBank::getCode);
|
||||
IPage<LngBBank> page = bankService.page(ConventPage.getPage(dto), queryWrapper);
|
||||
PageOutput<LngBBankPageVo> pageOutput = ConventPage.getPageOutput(page, LngBBankPageVo.class);
|
||||
return R.ok(pageOutput);
|
||||
|
||||
@ -70,11 +70,10 @@ public class CustomerController {
|
||||
.like(StrUtil.isNotBlank(dto.getClassCode()),LngCustomer::getClassCode,dto.getClassCode())
|
||||
.like(StrUtil.isNotBlank(dto.getTypeCode()),LngCustomer::getTypeCode,dto.getTypeCode())
|
||||
.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())
|
||||
.orderByDesc(LngCustomer::getId)
|
||||
.select(LngCustomer.class,x -> VoToColumnUtil.fieldsToColumns(LngCustomerPageVo.class).contains(x.getProperty()));
|
||||
IPage<LngCustomer> page = customerService.page(ConventPage.getPage(dto), queryWrapper);
|
||||
.orderByAsc(LngCustomer::getCuCode);
|
||||
IPage<LngCustomer> page = customerService.page(ConventPage.getPage(dto), queryWrapper);
|
||||
PageOutput<LngCustomerPageVo> pageOutput = ConventPage.getPageOutput(page, LngCustomerPageVo.class);
|
||||
return R.ok(pageOutput);
|
||||
}
|
||||
@ -105,27 +104,6 @@ public class CustomerController {
|
||||
UpdateLngCustomerDto obj = dataService.insert(dto);
|
||||
codeRuleClient.useEncode(CUSTOMER_CODE);
|
||||
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();
|
||||
}
|
||||
}));
|
||||
**/
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -65,8 +65,7 @@ public class CustomerScoreController {
|
||||
.eq(ObjectUtil.isNotNull(dto.getScore()),LngScore::getScore,dto.getScore())
|
||||
.like(StrUtil.isNotBlank(dto.getApproCode()),LngScore::getApproCode,dto.getApproCode())
|
||||
.like(StrUtil.isNotBlank(dto.getNote()),LngScore::getNote,dto.getNote())
|
||||
.orderByDesc(LngScore::getId)
|
||||
.select(LngScore.class,x -> VoToColumnUtil.fieldsToColumns(LngScorePageVo.class).contains(x.getProperty()));
|
||||
.orderByDesc(LngScore::getId);
|
||||
IPage<LngScore> page = scoreCustomerService.page(ConventPage.getPage(dto), queryWrapper);
|
||||
PageOutput<LngScorePageVo> pageOutput = ConventPage.getPageOutput(page, LngScorePageVo.class);
|
||||
return R.ok(pageOutput);
|
||||
|
||||
@ -1,9 +1,10 @@
|
||||
package com.xjrsoft.module.sales.mapper;
|
||||
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.github.yulichang.base.MPJBaseMapper;
|
||||
import com.xjrsoft.module.sales.entity.LngScore;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
/**
|
||||
* @title: mapper
|
||||
|
||||
@ -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.MPJRelationService;
|
||||
import com.xjrsoft.module.sales.entity.LngScore;
|
||||
import com.xjrsoft.module.sales.vo.LngScoreVo;
|
||||
|
||||
import lombok.Data;
|
||||
import java.util.List;
|
||||
|
||||
@ -16,21 +18,7 @@ import java.util.List;
|
||||
*/
|
||||
|
||||
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
|
||||
*/
|
||||
Boolean delete(List<Long> ids);
|
||||
|
||||
LngScoreVo getInfoById(Long id);
|
||||
}
|
||||
|
||||
@ -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;
|
||||
}
|
||||
}
|
||||
@ -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;
|
||||
}
|
||||
}
|
||||
@ -21,17 +21,14 @@ import com.xjrsoft.common.page.PageOutput;
|
||||
import com.xjrsoft.common.utils.VoToColumnUtil;
|
||||
import com.xjrsoft.module.datalog.service.DatalogService;
|
||||
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.UpdateLngSupplierDto;
|
||||
import com.xjrsoft.module.supplier.entity.LngSupplier;
|
||||
import com.xjrsoft.module.supplier.service.ISupplierService;
|
||||
import com.xjrsoft.module.supplier.vo.LngSupplierPageVo;
|
||||
import com.xjrsoft.module.supplier.vo.LngSupplierVo;
|
||||
import com.xjrsoft.module.system.client.ICodeRuleClient;
|
||||
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
@ -73,8 +70,7 @@ public class SupplierController {
|
||||
.like(StrUtil.isNotBlank(dto.getDI()),LngSupplier::getDI,dto.getDI())
|
||||
.eq(StrUtil.isNotBlank(dto.getValid()),LngSupplier::getValid,dto.getValid())
|
||||
.like(StrUtil.isNotBlank(dto.getApproCode()),LngSupplier::getApproCode,dto.getApproCode())
|
||||
.orderByDesc(LngSupplier::getId)
|
||||
.select(LngSupplier.class,x -> VoToColumnUtil.fieldsToColumns(LngSupplierPageVo.class).contains(x.getProperty()));
|
||||
.orderByDesc(LngSupplier::getSuCode);
|
||||
IPage<LngSupplier> page = supplierService.page(ConventPage.getPage(dto), queryWrapper);
|
||||
PageOutput<LngSupplierPageVo> pageOutput = ConventPage.getPageOutput(page, LngSupplierPageVo.class);
|
||||
return R.ok(pageOutput);
|
||||
|
||||
@ -46,7 +46,7 @@ import lombok.AllArgsConstructor;
|
||||
@RequestMapping("/supplier" + "/scoreSupplier")
|
||||
@Api(value = "/supplier" + "/scoreSupplier",tags = "供应商评价代码")
|
||||
@AllArgsConstructor
|
||||
public class ScoreSupplierController {
|
||||
public class SupplierScoreController {
|
||||
|
||||
|
||||
private final IScoreSupplierService scoreSupplierService;
|
||||
@ -1,20 +1,24 @@
|
||||
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.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableLogic;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
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.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.ApiModelProperty;
|
||||
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子表")
|
||||
@TableField(exist = false)
|
||||
@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;
|
||||
|
||||
}
|
||||
@ -1,20 +1,17 @@
|
||||
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.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableLogic;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.Version;
|
||||
import com.github.yulichang.annotation.EntityMapping;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
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("实际评分时间")
|
||||
private Object aTime;
|
||||
private LocalDateTime aTime;
|
||||
|
||||
/**
|
||||
* 分数
|
||||
|
||||
Reference in New Issue
Block a user