# Conflicts:
#	itc-pcitc-dependencies/itc-pcitc-dependencies-api/src/main/java/com/pictc/constant/FieldNameConstants.java
#	itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/controller/PriceTermsController.java
#	itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/service/IPriceTermsService.java
#	itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/service/impl/PriceTermsServiceImpl.java
This commit is contained in:
张秉卓
2025-10-23 10:14:56 +08:00
20 changed files with 334 additions and 126 deletions

View File

@ -1,40 +1,41 @@
package com.xjrsoft.module.mdm.controller;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import java.util.ArrayList;
import java.util.List;
import javax.validation.Valid;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.xjrsoft.common.constant.GlobalConstant;
import com.baomidou.mybatisplus.core.toolkit.StringPool;
import com.xjrsoft.common.model.result.R;
import com.xjrsoft.common.page.ConventPage;
import com.xjrsoft.common.page.PageOutput;
import com.xjrsoft.common.model.result.R;
import com.xjrsoft.common.utils.VoToColumnUtil;
import com.xjrsoft.module.mdm.dto.AddLngBBankDto;
import com.xjrsoft.module.mdm.dto.UpdateLngBBankDto;
import cn.dev33.satoken.annotation.SaCheckPermission;
import com.xjrsoft.module.authority.dto.BatchSetDataAuthDto;
import com.xjrsoft.module.datalog.service.DatalogService;
import com.xjrsoft.module.datalog.vo.DataChangeLogVo;
import com.xjrsoft.module.mdm.dto.LngBBankPageDto;
import com.xjrsoft.module.mdm.dto.UpdateLngBBankDto;
import com.xjrsoft.module.mdm.entity.LngBBank;
import com.xjrsoft.module.mdm.service.IBankService;
import com.xjrsoft.module.mdm.vo.LngBBankPageVo;
import com.xjrsoft.module.authority.dto.BatchSetDataAuthDto;
import java.util.stream.Collectors;
import java.util.ArrayList;
import com.xjrsoft.module.datalog.vo.DataChangeLogVo;
import com.xjrsoft.module.datalog.entity.DataChangeLog;
import com.xjrsoft.module.datalog.service.DatalogService;
import com.xjrsoft.module.mdm.vo.LngBBankVo;
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;
import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import javax.validation.constraints.NotNull;
import java.util.List;
/**
* @title: 银行
@ -43,7 +44,7 @@ import java.util.List;
* @Version 1.0
*/
@RestController
@RequestMapping("/mdm" + "/bank")
@RequestMapping("/mdm/bank")
@Api(value = "/mdm" + "/bank",tags = "银行代码")
@AllArgsConstructor
public class BankController {
@ -97,8 +98,9 @@ public class BankController {
@ApiOperation(value = "新增LngBBank")
@SaCheckPermission("bank:add")
public R add(@Valid @RequestBody UpdateLngBBankDto dto){
UpdateLngBBankDto res = dataService.insert(dto);
return R.ok(res.getId());
Long res = bankService.add(dto);
return R.ok(res);
}
@PutMapping
@ -112,7 +114,7 @@ public class BankController {
@ApiOperation(value = "删除")
@SaCheckPermission("bank:delete")
public R delete(@Valid @RequestBody List<Long> ids){
return R.ok(dataService.deleteByIds(UpdateLngBBankDto.class, ids));
return R.ok(dataService.deleteByIds(UpdateLngBBankDto.class, ids));
}
@ -130,4 +132,19 @@ public class BankController {
}
return R.ok(bankService.updateBatchById(toUpdateList));
}
@PostMapping("/enable")
@ApiOperation(value = "启用")
@SaCheckPermission("bank:enable")
public R enable(@Valid @RequestBody List<Long> ids){
return R.ok(bankService.enable(ids));
}
@PostMapping("/disable")
@ApiOperation(value = "禁用")
@SaCheckPermission("bank:disable")
public R disable(@Valid @RequestBody List<Long> ids){
return R.ok(bankService.disable(ids));
}
}

View File

@ -15,11 +15,13 @@ import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.pictc.utils.CollectionUtils;
import com.xjrsoft.common.enums.YesOrNoEnum;
import com.xjrsoft.common.model.result.R;
import com.xjrsoft.common.page.ConventPage;
import com.xjrsoft.common.page.PageOutput;
import com.xjrsoft.common.utils.TreeUtil;
import com.xjrsoft.common.utils.VoToColumnUtil;
import com.xjrsoft.module.datalog.entity.DataChangeLog;
import com.xjrsoft.module.datalog.service.DatalogService;
import com.xjrsoft.module.datalog.vo.DataChangeLogVo;
import com.xjrsoft.module.mdm.dto.LngBRegionPageDto;
@ -28,6 +30,7 @@ import com.xjrsoft.module.mdm.entity.LngBRegion;
import com.xjrsoft.module.mdm.enums.CountryRegionEnum;
import com.xjrsoft.module.mdm.service.ICountryRegionService;
import com.xjrsoft.module.mdm.vo.LngBRegionPageVo;
import com.xjrsoft.module.mdm.vo.LngBRegionTreeVo;
import com.xjrsoft.module.mdm.vo.LngBRegionVo;
import cn.dev33.satoken.annotation.SaCheckPermission;
@ -109,8 +112,8 @@ public class CountryRegionController {
}else {
dto.setFullPath(dto.getFullName());
}
UpdateLngBRegionDto res = dataService.insert(dto);
return R.ok(res.getId());
Long res = countryRegionService.add(dto);
return R.ok(res);
}
@PutMapping
@ -142,8 +145,41 @@ public class CountryRegionController {
@GetMapping(value = "/tree")
@ApiOperation(value = "LngBRegion树形结构")
//@SaCheckPermission("countryRegion:edit")
public R tree(@Valid @RequestBody UpdateLngBRegionDto dto){
return R.ok(null);
public R tree(){
LambdaQueryWrapper<LngBRegion> queryWrapper = new LambdaQueryWrapper<LngBRegion>();
queryWrapper.eq(LngBRegion::getValid,YesOrNoEnum.YES.getTextCode());
List<LngBRegion> list = countryRegionService.list(queryWrapper);
List<LngBRegionTreeVo> voList = CollectionUtils.newArrayList();
if(list != null && list.size() > 0) {
for(LngBRegion br:list) {
LngBRegionTreeVo vo = new LngBRegionTreeVo();
BeanUtil.copyProperties(br, vo);
if(br.getPid() != null) {
vo.setParentId(String.valueOf(br.getPid()) );
}else {
vo.setParentId("0");
}
voList.add(vo);
}
}
List<LngBRegionTreeVo> treeVoList = TreeUtil.build(voList);
return R.ok(treeVoList);
}
@PostMapping("/enable")
@ApiOperation(value = "启用")
@SaCheckPermission("countryRegion:enable")
public R enable(@Valid @RequestBody List<Long> ids){
return R.ok(countryRegionService.enable(ids));
}
@PostMapping("/disable")
@ApiOperation(value = "禁用")
@SaCheckPermission("countryRegion:disable")
public R disable(@Valid @RequestBody List<Long> ids){
return R.ok(countryRegionService.disable(ids));
}
}

View File

@ -1,13 +1,11 @@
package com.xjrsoft.module.mdm.service;
import com.baomidou.mybatisplus.extension.service.IService;
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.mdm.entity.LngBBank;
import lombok.Data;
import java.util.List;
import com.baomidou.mybatisplus.extension.service.IService;
import com.xjrsoft.module.mdm.dto.UpdateLngBBankDto;
import com.xjrsoft.module.mdm.entity.LngBBank;
/**
* @title: service
* @Author 管理员
@ -16,4 +14,10 @@ import java.util.List;
*/
public interface IBankService extends IService<LngBBank> {
Long add(UpdateLngBBankDto dto);
boolean enable(List<Long> ids);
boolean disable(List<Long> ids);
}

View File

@ -1,13 +1,11 @@
package com.xjrsoft.module.mdm.service;
import com.baomidou.mybatisplus.extension.service.IService;
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.mdm.entity.LngBRegion;
import lombok.Data;
import java.util.List;
import com.baomidou.mybatisplus.extension.service.IService;
import com.xjrsoft.module.mdm.dto.UpdateLngBRegionDto;
import com.xjrsoft.module.mdm.entity.LngBRegion;
/**
* @title: service
* @Author 管理员
@ -16,4 +14,10 @@ import java.util.List;
*/
public interface ICountryRegionService extends IService<LngBRegion> {
Long add(UpdateLngBRegionDto dto);
boolean enable(List<Long> ids);
boolean disable(List<Long> ids);
}

View File

@ -1,17 +1,28 @@
package com.xjrsoft.module.mdm.service.impl;
import java.util.List;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.yulichang.base.MPJBaseServiceImpl;
import com.pictc.constant.FieldNameConstants;
import com.pictc.constant.TableNameConstants;
import com.pictc.enums.BusinessCode;
import com.pictc.enums.ExceptionCommonCode;
import com.pictc.utils.DataLogTools;
import com.xjrsoft.common.exception.BusinessException;
import com.xjrsoft.module.common.db.service.CommonCallService;
import com.xjrsoft.module.datalog.service.DatalogService;
import com.xjrsoft.module.mdm.dto.UpdateLngBBankDto;
import com.xjrsoft.module.mdm.entity.LngBBank;
import com.xjrsoft.module.mdm.mapper.LngBBankMapper;
import com.xjrsoft.module.mdm.service.IBankService;
import com.xjrsoft.module.system.client.ICodeRuleClient;
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
@ -22,4 +33,55 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@Service
@AllArgsConstructor
public class BankServiceImpl extends ServiceImpl<LngBBankMapper, LngBBank> implements IBankService {
private final CommonCallService commonCallService;
private final DatalogService dataService;
private final ICodeRuleClient codeRuleClient;
@Override
@Transactional(rollbackFor = Exception.class)
public Long add(UpdateLngBBankDto dto) {
String code = codeRuleClient.genEncode("bankCode");
dto.setCode(code);
this.checkParams(dto);
UpdateLngBBankDto res = DataLogTools.insert(dto);
//this.addOrUpdateAfter(res.getId());
return res.getId();
}
@Override
public boolean enable(List<Long> ids) {
return dataService.disable(UpdateLngBBankDto.class,ids);
}
@Override
public boolean disable(List<Long> ids) {
return dataService.disable(UpdateLngBBankDto.class,ids);
}
private void checkParams(UpdateLngBBankDto dto) {
Long codeCount = this.baseMapper.selectCount(new LambdaQueryWrapper<LngBBank>()
.eq(LngBBank::getCode, dto.getCode()));
if (codeCount > 0) {
throw new BusinessException(BusinessCode.ofArgs(ExceptionCommonCode.DATA_FIELD_DUPLICATION,
FieldNameConstants.CODE));
}
Long nameCount = this.baseMapper.selectCount(new LambdaQueryWrapper<LngBBank>()
.eq(LngBBank::getFullName, dto.getFullName()));
if (nameCount > 0) {
throw new BusinessException(BusinessCode.ofArgs(ExceptionCommonCode.DATA_FIELD_DUPLICATION,
FieldNameConstants.FULL_NAME));
}
}
private void addOrUpdateAfter(Long id) {
String msg = commonCallService.saveAfter(TableNameConstants.LNG_B_BANK, id);
if (StringUtils.isNotBlank(msg)) {
throw new BusinessException(BusinessCode.ofArgs(ExceptionCommonCode.DB_FUNCTION_EXEC_ERROR, msg));
}
}
}

View File

@ -1,17 +1,27 @@
package com.xjrsoft.module.mdm.service.impl;
import java.util.List;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.yulichang.base.MPJBaseServiceImpl;
import com.pictc.constant.FieldNameConstants;
import com.pictc.constant.TableNameConstants;
import com.pictc.enums.BusinessCode;
import com.pictc.enums.ExceptionCommonCode;
import com.pictc.utils.DataLogTools;
import com.xjrsoft.common.exception.BusinessException;
import com.xjrsoft.module.common.db.service.CommonCallService;
import com.xjrsoft.module.datalog.service.DatalogService;
import com.xjrsoft.module.mdm.dto.UpdateLngBRegionDto;
import com.xjrsoft.module.mdm.entity.LngBRegion;
import com.xjrsoft.module.mdm.mapper.LngBRegionMapper;
import com.xjrsoft.module.mdm.service.ICountryRegionService;
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
@ -22,4 +32,51 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@Service
@AllArgsConstructor
public class CountryRegionServiceImpl extends ServiceImpl<LngBRegionMapper, LngBRegion> implements ICountryRegionService {
private final CommonCallService commonCallService;
private final DatalogService dataService;
@Override
@Transactional(rollbackFor = Exception.class)
public Long add(UpdateLngBRegionDto dto) {
this.checkParams(dto);
UpdateLngBRegionDto res = DataLogTools.insert(dto);
//this.addOrUpdateAfter(res.getId());
return res.getId();
}
@Override
public boolean enable(List<Long> ids) {
return dataService.disable(UpdateLngBRegionDto.class,ids);
}
@Override
public boolean disable(List<Long> ids) {
return dataService.disable(UpdateLngBRegionDto.class,ids);
}
private void checkParams(UpdateLngBRegionDto dto) {
Long codeCount = this.baseMapper.selectCount(new LambdaQueryWrapper<LngBRegion>()
.eq(LngBRegion::getCode, dto.getCode()));
if (codeCount > 0) {
throw new BusinessException(BusinessCode.ofArgs(ExceptionCommonCode.DATA_FIELD_DUPLICATION,
FieldNameConstants.CODE));
}
Long nameCount = this.baseMapper.selectCount(new LambdaQueryWrapper<LngBRegion>()
.eq(LngBRegion::getFullName, dto.getFullName()));
if (nameCount > 0) {
throw new BusinessException(BusinessCode.ofArgs(ExceptionCommonCode.DATA_FIELD_DUPLICATION,
FieldNameConstants.FULL_NAME));
}
}
private void addOrUpdateAfter(Long id) {
String msg = commonCallService.saveAfter(TableNameConstants.LNG_B_REGION, id);
if (StringUtils.isNotBlank(msg)) {
throw new BusinessException(BusinessCode.ofArgs(ExceptionCommonCode.DB_FUNCTION_EXEC_ERROR, msg));
}
}
}