From b2fc6b0d2882b518a558a4ef477dadfebc8966ea Mon Sep 17 00:00:00 2001 From: "t-shunyi.kuang" <846002312@qq.com> Date: Wed, 22 Oct 2025 17:56:18 +0800 Subject: [PATCH] bank --- .../pictc/constant/FieldNameConstants.java | 21 +++++ .../pictc/constant/TableNameConstants.java | 11 +++ .../module/mdm/vo/LngBRegionTreeVo.java | 63 ++++++++++++++ .../module/mdm/controller/BankController.java | 69 +++++++++------ .../controller/CountryRegionController.java | 48 +++++++++-- .../mdm/controller/PriceTermsController.java | 49 ++++++----- .../module/mdm/service/IBankService.java | 16 ++-- .../mdm/service/ICountryRegionService.java | 16 ++-- .../mdm/service/IPriceTermsService.java | 11 +++ .../mdm/service/impl/BankServiceImpl.java | 76 +++++++++++++++-- .../impl/CountryRegionServiceImpl.java | 71 ++++++++++++++-- .../service/impl/PriceTermsServiceImpl.java | 83 +++++++++++++++++++ 12 files changed, 453 insertions(+), 81 deletions(-) create mode 100644 itc-pcitc-dependencies/itc-pcitc-dependencies-api/src/main/java/com/pictc/constant/FieldNameConstants.java create mode 100644 itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/mdm/vo/LngBRegionTreeVo.java diff --git a/itc-pcitc-dependencies/itc-pcitc-dependencies-api/src/main/java/com/pictc/constant/FieldNameConstants.java b/itc-pcitc-dependencies/itc-pcitc-dependencies-api/src/main/java/com/pictc/constant/FieldNameConstants.java new file mode 100644 index 0000000..79536b1 --- /dev/null +++ b/itc-pcitc-dependencies/itc-pcitc-dependencies-api/src/main/java/com/pictc/constant/FieldNameConstants.java @@ -0,0 +1,21 @@ +package com.pictc.constant; + +/** + * @author 张秉卓 + * @date 2025年10月22日 下午12:00:34 + * @Description: 表名常量 + */ +public interface FieldNameConstants { + + /** + * 编码 + */ + String CODE = "编码"; + + /** + * 名称 + */ + String FULL_NAME = "名称"; + + +} diff --git a/itc-pcitc-dependencies/itc-pcitc-dependencies-api/src/main/java/com/pictc/constant/TableNameConstants.java b/itc-pcitc-dependencies/itc-pcitc-dependencies-api/src/main/java/com/pictc/constant/TableNameConstants.java index 388fe7f..e27b421 100644 --- a/itc-pcitc-dependencies/itc-pcitc-dependencies-api/src/main/java/com/pictc/constant/TableNameConstants.java +++ b/itc-pcitc-dependencies/itc-pcitc-dependencies-api/src/main/java/com/pictc/constant/TableNameConstants.java @@ -17,5 +17,16 @@ public interface TableNameConstants { */ String LNG_B_CURRENCY = "lng_b_currency"; + + /** + * 银行表 + */ + String LNG_B_BANK = "lng_b_bank"; + + /** + * 币种表 + */ + String LNG_B_REGION = "lng_b_region"; + } diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/mdm/vo/LngBRegionTreeVo.java b/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/mdm/vo/LngBRegionTreeVo.java new file mode 100644 index 0000000..3572c47 --- /dev/null +++ b/itc-pcitc-mdm/itc-pcitc-mdm-api/src/main/java/com/xjrsoft/module/mdm/vo/LngBRegionTreeVo.java @@ -0,0 +1,63 @@ +package com.xjrsoft.module.mdm.vo; + +import java.io.Serializable; +import java.util.List; + +import com.xjrsoft.common.model.tree.ITreeNode; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** +* @title: 分页列表出参 +* @Author 管理员 +* @Date: 2025-10-22 +* @Version 1.0 +*/ +@Data +public class LngBRegionTreeVo implements ITreeNode, Serializable{ + + /** + * 主键 + */ + @ApiModelProperty("主键") + private String id; + /** + * 助记码 + */ + @ApiModelProperty("助记码") + private String code; + /** + * 名称(不能重复) + */ + @ApiModelProperty("名称(不能重复)") + private String fullName; + /** + * 类型 + */ + @ApiModelProperty("类型") + //@Trans(type = TransType.DIC, id = "1980458729324212226") + private String regionTypeCode; + /** + * 上级ID + */ + @ApiModelProperty("上级ID") + private Long pid; + + @ApiModelProperty("上级ID") + private String parentId; + /** + * 全路径名称 + */ + @ApiModelProperty("全路径名称") + private String fullPath; + /** + * 有效标志(Y-有效,N-无效) + */ + @ApiModelProperty("有效标志(Y-有效,N-无效)") + //@Trans(type = TransType.DIC, id = "1978057078528327681") + private String valid; + + private List children; + +} diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/controller/BankController.java b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/controller/BankController.java index 6828735..04fa230 100644 --- a/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/controller/BankController.java +++ b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/controller/BankController.java @@ -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 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 ids){ + return R.ok(bankService.enable(ids)); + } + + + @PostMapping("/disable") + @ApiOperation(value = "禁用") + @SaCheckPermission("bank:disable") + public R disable(@Valid @RequestBody List ids){ + return R.ok(bankService.disable(ids)); + } } \ No newline at end of file diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/controller/CountryRegionController.java b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/controller/CountryRegionController.java index a531947..a33efbf 100644 --- a/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/controller/CountryRegionController.java +++ b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/controller/CountryRegionController.java @@ -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 queryWrapper = new LambdaQueryWrapper(); + queryWrapper.eq(LngBRegion::getValid,YesOrNoEnum.YES.getTextCode()); + List list = countryRegionService.list(queryWrapper); + List 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 treeVoList = TreeUtil.build(voList); + return R.ok(treeVoList); + } + + @PostMapping("/enable") + @ApiOperation(value = "启用") + @SaCheckPermission("countryRegion:enable") + public R enable(@Valid @RequestBody List ids){ + return R.ok(countryRegionService.enable(ids)); + } + + + @PostMapping("/disable") + @ApiOperation(value = "禁用") + @SaCheckPermission("countryRegion:disable") + public R disable(@Valid @RequestBody List ids){ + return R.ok(countryRegionService.disable(ids)); } } \ No newline at end of file diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/controller/PriceTermsController.java b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/controller/PriceTermsController.java index cdb46ca..c0230b8 100644 --- a/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/controller/PriceTermsController.java +++ b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/controller/PriceTermsController.java @@ -6,13 +6,16 @@ import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.pictc.utils.DataLogTools; import com.xjrsoft.common.constant.GlobalConstant; import com.baomidou.mybatisplus.core.toolkit.StringPool; 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.common.db.service.CommonCallService; import com.xjrsoft.module.mdm.dto.AddLngBPriceTermDto; +import com.xjrsoft.module.mdm.dto.UpdateLngBCurrencyDto; import com.xjrsoft.module.mdm.dto.UpdateLngBPriceTermDto; import cn.dev33.satoken.annotation.SaCheckPermission; @@ -20,8 +23,7 @@ import com.xjrsoft.module.mdm.dto.LngBPriceTermPageDto; import com.xjrsoft.module.mdm.entity.LngBPriceTerm; import com.xjrsoft.module.mdm.service.IPriceTermsService; import com.xjrsoft.module.mdm.vo.LngBPriceTermPageVo; -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.LngBPriceTermVo; import io.swagger.annotations.Api; @@ -56,13 +58,12 @@ public class PriceTermsController { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper - .like(StrUtil.isNotBlank(dto.getFullName()),LngBPriceTerm::getFullName,dto.getFullName()) - .like(StrUtil.isNotBlank(dto.getValid()),LngBPriceTerm::getValid,dto.getValid()) - .like(StrUtil.isNotBlank(dto.getCode()),LngBPriceTerm::getCode,dto.getCode()) - .like(StrUtil.isNotBlank(dto.getFreightSign()),LngBPriceTerm::getFreightSign,dto.getFreightSign()) - .like(StrUtil.isNotBlank(dto.getInsuranceSign()),LngBPriceTerm::getInsuranceSign,dto.getInsuranceSign()) - .like(StrUtil.isNotBlank(dto.getNote()),LngBPriceTerm::getNote,dto.getNote()) - .orderByDesc(LngBPriceTerm::getId) + .and(StrUtil.isNotBlank(dto.getFullName()), r -> + r.like(LngBPriceTerm::getCode, dto.getFullName()) + .or() + .like(LngBPriceTerm::getFullName, dto.getFullName())) + .eq(StrUtil.isNotBlank(dto.getValid()),LngBPriceTerm::getValid,dto.getValid()) + .orderByAsc(LngBPriceTerm::getSort, LngBPriceTerm::getCode) .select(LngBPriceTerm.class,x -> VoToColumnUtil.fieldsToColumns(LngBPriceTermPageVo.class).contains(x.getProperty())); IPage page = priceTermsService.page(ConventPage.getPage(dto), queryWrapper); PageOutput pageOutput = ConventPage.getPageOutput(page, LngBPriceTermPageVo.class); @@ -79,38 +80,40 @@ public class PriceTermsController { } return R.ok(BeanUtil.toBean(lngBPriceTerm, LngBPriceTermVo.class)); } - - @GetMapping(value = "/datalog") - @ApiOperation(value="根据id查询LngBPriceTerm数据详细日志") - @SaCheckPermission("priceTerms:datalog") - public R datalog(@RequestParam Long id){ - List logs = dataService.findLogsByEntityId(UpdateLngBPriceTermDto.class,id); - return R.ok(logs); - } @PostMapping @ApiOperation(value = "新增LngBPriceTerm") @SaCheckPermission("priceTerms:add") public R add(@Valid @RequestBody UpdateLngBPriceTermDto dto){ - UpdateLngBPriceTermDto res = dataService.insert(dto); - return R.ok(res.getId()); + return R.ok(priceTermsService.add(dto)); } @PutMapping @ApiOperation(value = "修改LngBPriceTerm") @SaCheckPermission("priceTerms:edit") public R update(@Valid @RequestBody UpdateLngBPriceTermDto dto){ - return R.ok(dataService.updateById(dto)); + return R.ok(priceTermsService.updateByDTO(dto)); } @DeleteMapping @ApiOperation(value = "删除") @SaCheckPermission("priceTerms:delete") public R delete(@Valid @RequestBody List ids){ - return R.ok(dataService.deleteByIds(UpdateLngBPriceTermDto.class, ids)); - + return R.ok(dataService.deleteByIds(UpdateLngBPriceTermDto.class, ids)); } - + @PostMapping("/enable") + @ApiOperation(value = "启用") + @SaCheckPermission("priceTerms:enable") + public R enable(@Valid @RequestParam Long id){ + return R.ok(priceTermsService.enable(id)); + } + + @PostMapping("/disable") + @ApiOperation(value = "停用") + @SaCheckPermission("priceTerms:disable") + public R disable(@Valid @RequestParam Long id){ + return R.ok(priceTermsService.disable(id)); + } } \ No newline at end of file diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/service/IBankService.java b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/service/IBankService.java index 67dc2d4..034bbc8 100644 --- a/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/service/IBankService.java +++ b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/service/IBankService.java @@ -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 { + + Long add(UpdateLngBBankDto dto); + + boolean enable(List ids); + + boolean disable(List ids); } diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/service/ICountryRegionService.java b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/service/ICountryRegionService.java index 7f0b99c..22dd37e 100644 --- a/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/service/ICountryRegionService.java +++ b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/service/ICountryRegionService.java @@ -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 { + + Long add(UpdateLngBRegionDto dto); + + boolean enable(List ids); + + boolean disable(List ids); } diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/service/IPriceTermsService.java b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/service/IPriceTermsService.java index 71bc609..2c9506b 100644 --- a/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/service/IPriceTermsService.java +++ b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/service/IPriceTermsService.java @@ -4,8 +4,11 @@ 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.dto.UpdateLngBPriceTermDto; import com.xjrsoft.module.mdm.entity.LngBPriceTerm; import lombok.Data; + +import javax.validation.Valid; import java.util.List; /** @@ -16,4 +19,12 @@ import java.util.List; */ public interface IPriceTermsService extends IService { + + Long add(@Valid UpdateLngBPriceTermDto dto); + + boolean updateByDTO(@Valid UpdateLngBPriceTermDto dto); + + boolean enable(@Valid Long id); + + boolean disable(@Valid Long id); } diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/service/impl/BankServiceImpl.java b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/service/impl/BankServiceImpl.java index b0dad17..736f1ee 100644 --- a/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/service/impl/BankServiceImpl.java +++ b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/service/impl/BankServiceImpl.java @@ -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 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 ids) { + return dataService.disable(UpdateLngBBankDto.class,ids); + } + + + @Override + public boolean disable(List ids) { + return dataService.disable(UpdateLngBBankDto.class,ids); + } + + private void checkParams(UpdateLngBBankDto dto) { + Long codeCount = this.baseMapper.selectCount(new LambdaQueryWrapper() + .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() + .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)); + } + } + } diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/service/impl/CountryRegionServiceImpl.java b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/service/impl/CountryRegionServiceImpl.java index a9d2544..54259f5 100644 --- a/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/service/impl/CountryRegionServiceImpl.java +++ b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/service/impl/CountryRegionServiceImpl.java @@ -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 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 ids) { + return dataService.disable(UpdateLngBRegionDto.class,ids); + } + + + @Override + public boolean disable(List ids) { + return dataService.disable(UpdateLngBRegionDto.class,ids); + } + + private void checkParams(UpdateLngBRegionDto dto) { + Long codeCount = this.baseMapper.selectCount(new LambdaQueryWrapper() + .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() + .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)); + } + } + } diff --git a/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/service/impl/PriceTermsServiceImpl.java b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/service/impl/PriceTermsServiceImpl.java index 3275d2f..79c5a04 100644 --- a/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/service/impl/PriceTermsServiceImpl.java +++ b/itc-pcitc-mdm/itc-pcitc-mdm-service/src/main/java/com/xjrsoft/module/mdm/service/impl/PriceTermsServiceImpl.java @@ -1,11 +1,23 @@ package com.xjrsoft.module.mdm.service.impl; +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.enums.ValidEnum; +import com.pictc.utils.DataLogTools; +import com.xjrsoft.common.exception.BusinessException; +import com.xjrsoft.module.common.db.service.CommonCallService; +import com.xjrsoft.module.mdm.dto.UpdateLngBCurrencyDto; +import com.xjrsoft.module.mdm.dto.UpdateLngBPriceTermDto; import com.xjrsoft.module.mdm.entity.LngBPriceTerm; import com.xjrsoft.module.mdm.mapper.LngBPriceTermMapper; import com.xjrsoft.module.mdm.service.IPriceTermsService; import lombok.AllArgsConstructor; +import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.List; @@ -13,6 +25,8 @@ import java.util.Objects; import java.util.stream.Collectors; import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import static microsoft.exchange.webservices.data.core.XmlElementNames.ResponseCode; + /** * @title: service * @Author 管理员 @@ -22,4 +36,73 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; @Service @AllArgsConstructor public class PriceTermsServiceImpl extends ServiceImpl implements IPriceTermsService { + + private final CommonCallService commonCallService; + + @Override + @Transactional(rollbackFor = Exception.class) + public Long add(UpdateLngBPriceTermDto dto) { + this.checkParams(dto); + UpdateLngBPriceTermDto res = DataLogTools.insert(dto); + this.addOrUpdateAfter(res.getId()); + return res.getId(); + } + + private void checkParams(UpdateLngBPriceTermDto dto) { + Long codeCount = this.baseMapper.selectCount(new LambdaQueryWrapper() + .eq(LngBPriceTerm::getCode, dto.getCode())); + if (codeCount > 0) { + throw new BusinessException(BusinessCode.ofArgs(ExceptionCommonCode.DATA_FIELD_DUPLICATION, + FieldNameConstants.CODE)); + } + Long nameCount = this.baseMapper.selectCount(new LambdaQueryWrapper() + .eq(LngBPriceTerm::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_PRICE_TERM, id); + if (StringUtils.isNotBlank(msg)) { + throw new BusinessException(BusinessCode.ofArgs(ExceptionCommonCode.DB_FUNCTION_EXEC_ERROR, msg)); + } + } + + @Override + @Transactional(rollbackFor = Exception.class) + public boolean updateByDTO(UpdateLngBPriceTermDto dto) { + this.checkParams(dto); + DataLogTools.update(dto); + this.addOrUpdateAfter(dto.getId()); + return true; + } + + @Override + public boolean enable(Long id) { + this.updateValid(id, ValidEnum.ENABLE.getCode()); + String msg = commonCallService.enableBefore(TableNameConstants.LNG_B_PRICE_TERM, id); + if (StringUtils.isNotBlank(msg)) { + throw new BusinessException(BusinessCode.ofArgs(ExceptionCommonCode.DB_FUNCTION_EXEC_ERROR, msg)); + } + return true; + } + + private void updateValid(Long id, String valid) { + UpdateLngBPriceTermDto dto = new UpdateLngBPriceTermDto(); + dto.setId(id); + dto.setValid(valid); + DataLogTools.update(dto); + } + + @Override + public boolean disable(Long id) { + this.updateValid(id, ValidEnum.DISABLE.getCode()); + String msg = commonCallService.disableBefore(TableNameConstants.LNG_B_PRICE_TERM, id); + if (StringUtils.isNotBlank(msg)) { + throw new BusinessException(BusinessCode.ofArgs(ExceptionCommonCode.DB_FUNCTION_EXEC_ERROR, msg)); + } + return true; + } }