From 43603c1cb538ae4d8c2f6ce4710121c8c95677bd Mon Sep 17 00:00:00 2001
From: ludc
Date: 星期四, 14 十二月 2023 16:43:30 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyTemplateButtonServiceImpl.java | 428 +++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 428 insertions(+), 0 deletions(-)
diff --git a/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyTemplateButtonServiceImpl.java b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyTemplateButtonServiceImpl.java
new file mode 100644
index 0000000..c4eb529
--- /dev/null
+++ b/Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyTemplateButtonServiceImpl.java
@@ -0,0 +1,428 @@
+/*
+ * Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * Redistributions of source code must retain the above copyright notice,
+ * this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * Neither the name of the dreamlu.net developer nor the names of its
+ * contributors may be used to endorse or promote products derived from
+ * this software without specific prior written permission.
+ * Author: Chill 搴勯獮 (smallchill@163.com)
+ */
+package com.vci.ubcs.code.service.impl;
+
+import com.alibaba.nacos.common.utils.StringUtils;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.github.yulichang.wrapper.MPJLambdaWrapper;
+
+import com.vci.ubcs.code.dto.CodeClassifyTemplateButtonDTO;
+import com.vci.ubcs.code.entity.*;
+import com.vci.ubcs.code.enumpack.CodeButtonUseEnum;
+import com.vci.ubcs.code.mapper.CodeClassifyTemplateButtonMapper;
+import com.vci.ubcs.code.service.ICodeButtonService;
+import com.vci.ubcs.code.service.ICodeClassifyTemplateButtonService;
+import com.vci.ubcs.code.vo.pagemodel.CodeButtonVO;
+import com.vci.ubcs.code.vo.pagemodel.CodeClassifyTemplateButtonVO;
+import com.vci.ubcs.code.wrapper.CodeTempbuttonWrapper;
+import com.vci.ubcs.starter.exception.VciBaseException;
+import com.vci.ubcs.starter.revision.service.RevisionModelUtil;
+import com.vci.ubcs.starter.util.DefaultAttrAssimtUtil;
+import com.vci.ubcs.starter.util.MdmBtmTypeConstant;
+import com.vci.ubcs.starter.util.UBCSCondition;
+import com.vci.ubcs.starter.web.pagemodel.PageHelper;
+import com.vci.ubcs.starter.web.util.BeanUtil;
+import com.vci.ubcs.starter.web.util.BeanUtilForVCI;
+import com.vci.ubcs.starter.web.util.VciBaseUtil;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.tool.api.R;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.cglib.beans.BeanMap;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.CollectionUtils;
+
+import java.util.*;
+import java.util.stream.Collectors;
+
+import static com.vci.ubcs.code.constant.FrameWorkLangCodeConstant.*;
+
+/**
+ * 缂栫爜搴撳畾涔�-妯℃澘鎸夐挳鎵╁睍 鏈嶅姟瀹炵幇绫�
+ *
+ * @author yuxc
+ * @since 2023-04-20
+ */
+@Service
+public class CodeClassifyTemplateButtonServiceImpl extends ServiceImpl<CodeClassifyTemplateButtonMapper, CodeClassifyTemplateButton> implements ICodeClassifyTemplateButtonService {
+
+ /**
+ * 鏁版嵁鎿嶄綔灞�
+ */
+ @Autowired
+ private CodeClassifyTemplateButtonMapper codeClassifyTemplateButtonMapper;
+
+ /**
+ * 鎸夐挳鐨勬湇鍔�
+ */
+ @Autowired
+ private ICodeButtonService buttonService;
+
+ /**
+ * 瀵硅薄鐨勬搷浣�
+ */
+ @Autowired
+ private RevisionModelUtil revisionModelUtil;
+
+ /**
+ * 鏌ヨ鎵�鏈夌殑涓婚搴撻噷妯℃澘鍖呭惈鐨勬寜閽�
+ * @param conditionMap 鏌ヨ鏉′欢
+ * @param pageHelper 鍒嗛〉鍜屾帓搴�
+ * @return 鎵ц缁撴灉
+ * @throws VciBaseException 鏌ヨ鏉′欢鍜屽垎椤靛嚭閿欑殑鏃跺�欎細鎶涘嚭寮傚父
+ */
+ @Override
+ public IPage<CodeClassifyTemplateButtonVO> gridCodeClassifyTemplateButton(Map<String, String> conditionMap, PageHelper pageHelper) throws VciBaseException {
+ Query query = new Query();
+ if (pageHelper == null) {
+ query.setSize(-1);
+ }else {
+ query.setSize(pageHelper.getLimit());
+ query.setCurrent(pageHelper.getPage());
+ }
+ query.setDescs("createTime");
+ if(StringUtils.isBlank(conditionMap.getOrDefault("classifyTemplateOid",null))){
+ return new Page<>();
+ }
+
+ IPage<CodeClassifyTemplateButton> doList = codeClassifyTemplateButtonMapper.selectPage(Condition.getPage(query),getMPJLambdaWrapper(conditionMap));
+ IPage<CodeClassifyTemplateButtonVO> voList = new Page<>();
+ if (!CollectionUtils.isEmpty(doList.getRecords())) {
+ voList = CodeTempbuttonWrapper.build().pageVO(doList);
+ }
+ return voList;
+ }
+
+ /**
+ * 鎵归噺鏁版嵁瀵硅薄杞崲涓烘樉绀哄璞�
+ * @param codeClassifyTemplateButtonDOs 鏁版嵁瀵硅薄鍒楄〃
+ * @return 鏄剧ず瀵硅薄
+ * @throws VciBaseException 鍙傛暟涓虹┖鎴栬�呬笉瀛樺湪鐨勬椂鍊欎細鎶涘嚭寮傚父
+ */
+ @Override
+ public List<CodeClassifyTemplateButtonVO> codeClassifyTemplateButtonDO2VOs(Collection<CodeClassifyTemplateButton> codeClassifyTemplateButtonDOs) throws VciBaseException{
+ return codeClassifyTemplateButtonDO2VOs(codeClassifyTemplateButtonDOs,false);
+ }
+
+ /**
+ * 鎵归噺鏁版嵁瀵硅薄杞崲涓烘樉绀哄璞�
+ * @param codeClassifyTemplateButtonDOs 鏁版嵁瀵硅薄鍒楄〃
+ * @param hasButtonVO 鏄惁鍖呭惈鎸夐挳鐨勪俊鎭�
+ * @return 鏄剧ず瀵硅薄
+ * @throws VciBaseException 鍙傛暟涓虹┖鎴栬�呬笉瀛樺湪鐨勬椂鍊欎細鎶涘嚭寮傚父
+ */
+ @Override
+ public List<CodeClassifyTemplateButtonVO> codeClassifyTemplateButtonDO2VOs(Collection<CodeClassifyTemplateButton> codeClassifyTemplateButtonDOs, boolean hasButtonVO) throws VciBaseException{
+ List<CodeClassifyTemplateButtonVO> voList = new ArrayList<CodeClassifyTemplateButtonVO>();
+ if(!CollectionUtils.isEmpty(codeClassifyTemplateButtonDOs)){
+ for(CodeClassifyTemplateButton s: codeClassifyTemplateButtonDOs){
+ CodeClassifyTemplateButtonVO vo = codeClassifyTemplateButtonDO2VO(s);
+ if(vo != null){
+ voList.add(vo);
+ }
+ }
+ }
+ if(hasButtonVO && !CollectionUtils.isEmpty(voList)){
+ //鑾峰彇鎸夐挳鐨勬樉绀哄璞�
+ List<CodeButtonVO> buttonVOList = new ArrayList<>();
+ VciBaseUtil.switchCollectionForOracleIn(voList.stream().map(CodeClassifyTemplateButtonVO::getClassifyButtonOid).collect(Collectors.toList())).stream().forEach(buttonOids->{
+ buttonVOList.addAll(buttonService.listCodeButtonByOids(buttonOids));
+ });
+ Map<String, CodeButtonVO> buttonVOMap = Optional.ofNullable(buttonVOList).orElseGet(() -> new ArrayList<>()).stream().collect(Collectors.toMap(s -> s.getOid(), t -> t));
+ voList.stream().forEach(vo->{
+ vo.setButtonVO(buttonVOMap.getOrDefault(vo.getClassifyButtonOid(),null));
+ });
+ }
+ return voList;
+ }
+
+ /**
+ * 鏁版嵁瀵硅薄杞崲涓烘樉绀哄璞�
+ * @param codeClassifyTemplateButtonDO 鏁版嵁瀵硅薄
+ * @return 鏄剧ず瀵硅薄
+ * @throws VciBaseException 鎷疯礉灞炴�у嚭閿欑殑鏃跺�欎細鎶涘嚭寮傚父
+ */
+ @Override
+ public CodeClassifyTemplateButtonVO codeClassifyTemplateButtonDO2VO(CodeClassifyTemplateButton codeClassifyTemplateButtonDO) throws VciBaseException{
+ CodeClassifyTemplateButtonVO vo = new CodeClassifyTemplateButtonVO();
+ if(codeClassifyTemplateButtonDO != null){
+ BeanUtilForVCI.copyPropertiesIgnoreCase(codeClassifyTemplateButtonDO,vo);
+ //濡傛灉鏈塴cstatus鐨勭被鐨勮瘽
+ vo.setButtonUseText(CodeButtonUseEnum.getTextByValue(codeClassifyTemplateButtonDO.getButtonUse()));
+ }
+ return vo;
+ }
+
+ @Override
+ public IPage<CodeClassifyTemplateButtonVO> selectCodeTempbuttonPage(IPage<CodeClassifyTemplateButtonVO> page, CodeClassifyTemplateButtonVO CodeTempbutton) {
+ return page.setRecords(baseMapper.selectCodeTempbuttonPage(page, CodeTempbutton));
+ }
+
+ /**
+ * 澧炲姞涓婚搴撻噷妯℃澘鍖呭惈鐨勬寜閽�
+ * @param codeClassifyTemplateButtonDTO 涓婚搴撻噷妯℃澘鍖呭惈鐨勬寜閽暟鎹紶杈撳璞�
+ * @return 鎵ц缁撴灉
+ * @throws VciBaseException 鍙傛暟涓虹┖锛屽敮涓�椤癸紝蹇呰緭椤逛笉閫氳繃鏃朵細鎶涘嚭寮傚父
+ */
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public CodeClassifyTemplateButtonVO addSave(CodeClassifyTemplateButtonDTO codeClassifyTemplateButtonDTO) throws VciBaseException{
+ VciBaseUtil.alertNotNull(codeClassifyTemplateButtonDTO,"闇�瑕佹坊鍔犵殑鏁版嵁瀵硅薄",codeClassifyTemplateButtonDTO.getClassifyTemplateOid(),"妯℃澘鐨勪富閿�");
+ //灏咲TO杞崲涓篋O
+ CodeClassifyTemplateButton codeClassifyTemplateButtonDO = new CodeClassifyTemplateButton();
+ BeanUtilForVCI.copyPropertiesIgnoreCase(codeClassifyTemplateButtonDTO,codeClassifyTemplateButtonDO);
+ DefaultAttrAssimtUtil.addDefaultAttrAssimt(codeClassifyTemplateButtonDO, MdmBtmTypeConstant.CODE_TEMPLATE_BUTTON);
+ if(codeClassifyTemplateButtonDO.getOrderNum()== null){
+ //鏌ヨ鍏ㄩ儴
+ Long count = codeClassifyTemplateButtonMapper.selectCount(Wrappers.<CodeClassifyTemplateButton>query()
+ .lambda().eq(CodeClassifyTemplateButton::getClassifyTemplateOid,codeClassifyTemplateButtonDTO.getClassifyTemplateOid())
+ );
+ if(count == null){
+ count = 0L;
+ }
+ codeClassifyTemplateButtonDO.setOrderNum(Long.valueOf(count + 1L).intValue());
+ }
+ boolean resInsertClsTempButton = codeClassifyTemplateButtonMapper.insert(codeClassifyTemplateButtonDO) > 0;
+ return resInsertClsTempButton ? codeClassifyTemplateButtonDO2VO(codeClassifyTemplateButtonDO):null;
+ }
+
+ /**
+ * 淇敼涓婚搴撻噷妯℃澘鍖呭惈鐨勬寜閽�
+ * @param codeClassifyTemplateButtonDTO 涓婚搴撻噷妯℃澘鍖呭惈鐨勬寜閽暟鎹紶杈撳璞�
+ * @return 鎵ц缁撴灉
+ * @throws VciBaseException 鍙傛暟涓虹┖锛屽敮涓�椤癸紝蹇呰緭椤逛笉閫氳繃鏃朵細鎶涘嚭寮傚父
+ */
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public CodeClassifyTemplateButtonVO editSave(CodeClassifyTemplateButtonDTO codeClassifyTemplateButtonDTO) throws VciBaseException{
+ VciBaseUtil.alertNotNull(codeClassifyTemplateButtonDTO,"鏁版嵁瀵硅薄",codeClassifyTemplateButtonDTO.getOid(),"涓婚搴撻噷妯℃澘鍖呭惈鐨勬寜閽富閿�");
+ //灏咲TO杞崲涓篋O
+ CodeClassifyTemplateButton codeClassifyTemplateButtonDO = selectByOid(codeClassifyTemplateButtonDTO.getOid());
+ revisionModelUtil.copyFromDTOIgnore(codeClassifyTemplateButtonDTO,codeClassifyTemplateButtonDO);
+ DefaultAttrAssimtUtil.updateDefaultAttrAssimt(codeClassifyTemplateButtonDO);
+ boolean resUpdateClsTempButton = codeClassifyTemplateButtonMapper.updateById(codeClassifyTemplateButtonDO) > 0;
+ return resUpdateClsTempButton ? codeClassifyTemplateButtonDO2VO(codeClassifyTemplateButtonDO):null;
+ }
+
+ /**
+ * 鍒犻櫎涓婚搴撻噷妯℃澘鍖呭惈鐨勬寜閽�
+ * @param codeClassifyTemplateButtonDTO 涓婚搴撻噷妯℃澘鍖呭惈鐨勬寜閽暟鎹紶杈撳璞★紝oid鍜宼s闇�瑕佷紶杈�
+ * @return 鍒犻櫎缁撴灉鍙嶉锛氾細success锛氭垚鍔燂紝fail锛氬け璐�
+ * @throws VciBaseException 鍙傛暟涓虹┖锛岃寮曠敤鏃舵姏鍑哄紓甯�
+ */
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public R deleteCodeClassifyTemplateButton(CodeClassifyTemplateButtonDTO codeClassifyTemplateButtonDTO) throws VciBaseException{
+ VciBaseUtil.alertNotNull(codeClassifyTemplateButtonDTO,"涓婚搴撻噷妯℃澘鍖呭惈鐨勬寜閽暟鎹璞�",codeClassifyTemplateButtonDTO.getOid(),"涓婚搴撻噷妯℃澘鍖呭惈鐨勬寜閽殑涓婚敭");
+ CodeClassifyTemplateButton codeClassifyTemplateButtonDO = selectByOid(codeClassifyTemplateButtonDTO.getOid());
+ R baseResult = checkIsCanDeleteForDO(codeClassifyTemplateButtonDTO,codeClassifyTemplateButtonDO);
+ if(baseResult.isSuccess()) {
+ }else{
+ return baseResult;
+ }
+ //鎵ц鍒犻櫎鎿嶄綔
+ boolean b = codeClassifyTemplateButtonMapper.deleteById(codeClassifyTemplateButtonDO.getOid()) > 0;
+ return R.status(b);
+ }
+
+ /**
+ * 鏍¢獙鏄惁鍙互鍒犻櫎锛屽鏋滃瓨鍦ㄤ笅绾э紝骞朵笖涓嬬骇鏈夋暟鎹紩鐢ㄥ垯涓嶈兘鍒犻櫎
+ * @param codeClassifyTemplateButtonDTO 鏁版嵁浼犺緭瀵硅薄
+ * @param codeClassifyTemplateButtonDO 鏁版嵁搴撲腑鐨勬暟鎹璞�
+ * @return success涓簍rue涓哄彲浠ュ垹闄わ紝false琛ㄧず鏈夋暟鎹紩鐢紝obj涓簍rue琛ㄧず鏈変笅绾�
+ */
+ private R checkIsCanDeleteForDO(CodeClassifyTemplateButtonDTO codeClassifyTemplateButtonDTO, CodeClassifyTemplateButton codeClassifyTemplateButtonDO) {
+ CodeClassifyTemplateButton tsDO = new CodeClassifyTemplateButton();
+ BeanUtil.convert(codeClassifyTemplateButtonDTO,tsDO);
+ if (!checkTs(tsDO,codeClassifyTemplateButtonDO)) {
+ return R.fail(TS_NOT_PROCESS);
+ }
+ if(!checkIsLinked(codeClassifyTemplateButtonDO.getOid())) {
+ return R.success("success");
+ }else{
+ return R.fail(DATA_LINKED_NOT_DELETE);
+ }
+ }
+
+ /**
+ * 妫�鏌s
+ * @param tempDO
+ * @param codeClassifyTemplateButtonDO
+ * @return
+ */
+ private boolean checkTs(CodeClassifyTemplateButton tempDO,CodeClassifyTemplateButton codeClassifyTemplateButtonDO){
+ Date dbTs = codeClassifyTemplateButtonDO.getTs();
+ Date currentTs = tempDO.getTs();
+ if(currentTs == null ? dbTs == null:currentTs.compareTo(dbTs)==0){
+ return true;
+ }
+ return false;
+ }
+
+ /**
+ * 鑾峰彇杩炶〃鏌ヨ鏉′欢瀵硅薄
+ * @param conditionMap
+ * @return
+ */
+ private MPJLambdaWrapper<CodeClassifyTemplateButton> getMPJLambdaWrapper(Map<String,String> conditionMap){
+ CodeClassifyTemplateButton codeClassifyTemplateButton = new CodeClassifyTemplateButton();
+ BeanMap beanMap = BeanMap.create(codeClassifyTemplateButton);
+ beanMap.putAll(conditionMap);
+ MPJLambdaWrapper<CodeClassifyTemplateButton> mpjLambdaWrapper = UBCSCondition.getMPJLambdaWrapper(codeClassifyTemplateButton)
+ .selectAll(CodeClassifyTemplateButton.class)
+ .selectAs(CodeButton::getName, CodeClassifyTemplateButton::getClassifyButtonOidName)
+ .selectAs(CodeButton::getId, CodeClassifyTemplateButton::getClassifyButtonId)
+ .leftJoin(CodeButton.class, CodeButton::getOid, CodeClassifyTemplateButton::getClassifyButtonOid);
+ return mpjLambdaWrapper;
+ }
+
+ /**
+ * 涓婚敭鑾峰彇涓婚搴撻噷妯℃澘鍖呭惈鐨勬寜閽�
+ * @param oid 涓婚敭
+ * @return 涓婚搴撻噷妯℃澘鍖呭惈鐨勬寜閽樉绀哄璞�
+ * @throws VciBaseException 鍙傛暟涓虹┖锛屾暟鎹笉瀛樺湪鏃朵細鎶涘嚭寮傚父
+ */
+ @Override
+ public CodeClassifyTemplateButtonVO getObjectByOid(String oid) throws VciBaseException{
+ return codeClassifyTemplateButtonDO2VO(selectByOid(oid));
+ }
+
+ /**
+ * 涓婚敭鎵归噺鑾峰彇涓婚搴撻噷妯℃澘鍖呭惈鐨勬寜閽�
+ * @param oidCollections 涓婚敭闆嗗悎锛屼絾鏄彈鎬ц兘褰卞搷锛屽缓璁竴娆℃煡璇笉瓒呰繃10000涓�
+ * @return 涓婚搴撻噷妯℃澘鍖呭惈鐨勬寜閽樉绀哄璞�
+ * @throws VciBaseException 鏌ヨ鍑虹幇寮傚父鏃朵細鎶涘嚭
+ */
+ @Override
+ public Collection<CodeClassifyTemplateButtonVO> listCodeClassifyTemplateButtonByOids(Collection<String> oidCollections) throws VciBaseException{
+ VciBaseUtil.alertNotNull(oidCollections,"鏁版嵁瀵硅薄涓婚敭闆嗗悎");
+ List<CodeClassifyTemplateButton> codeClassifyTemplateButtonDOList = listCodeClassifyTemplateButtonDOByOidCollections(oidCollections);
+ return codeClassifyTemplateButtonDO2VOs(codeClassifyTemplateButtonDOList);
+ }
+
+ /**
+ * 鍙傜収涓婚搴撻噷妯℃澘鍖呭惈鐨勬寜閽垪琛�
+ * @param conditionMap 鏌ヨ鏉′欢
+ * @param pageHelper 鍒嗛〉鍜屾帓搴�
+ * @return 涓婚搴撻噷妯℃澘鍖呭惈鐨勬寜閽樉绀哄璞″垪琛紝鐢熸晥鐨勫唴瀹�
+ * @throws VciBaseException 鏌ヨ鏉′欢鍜屽垎椤靛嚭閿欑殑鏃跺�欎細鎶涘嚭寮傚父
+ */
+ @Override
+ public IPage<CodeClassifyTemplateButtonVO> refDataGridCodeClassifyTemplateButton(Map<String, String> conditionMap, PageHelper pageHelper) throws VciBaseException{
+ if(conditionMap == null){
+ conditionMap = new HashMap<String, String>();
+ }
+ return gridCodeClassifyTemplateButton(conditionMap, pageHelper);
+ }
+
+ /**
+ * 浣跨敤涓婚敭闆嗗悎鏌ヨ鏁版嵁瀵硅薄
+ * @param oidCollections 涓婚敭鐨勯泦鍚�
+ * @return 鏁版嵁瀵硅薄鍒楄〃
+ */
+ private List<CodeClassifyTemplateButton> listCodeClassifyTemplateButtonDOByOidCollections(Collection<String> oidCollections){
+ List<CodeClassifyTemplateButton> codeClassifyTemplateButtonDOList = new ArrayList<CodeClassifyTemplateButton>();
+ if(!CollectionUtils.isEmpty(oidCollections)){
+ Collection<Collection<String>> oidCollectionsList = VciBaseUtil.switchCollectionForOracleIn(oidCollections);
+ for(Collection<String> oids: oidCollectionsList){
+ List<CodeClassifyTemplateButton> tempDOList = codeClassifyTemplateButtonMapper.selectBatchIds(oids);
+ if(!CollectionUtils.isEmpty(tempDOList)){
+ codeClassifyTemplateButtonDOList.addAll(tempDOList);
+ }
+ }
+ }
+ return codeClassifyTemplateButtonDOList;
+ }
+
+ /**
+ * 鏍¢獙鏄惁琚紩鐢�
+ * @param oid 涓婚敭
+ * @throws VciBaseException 琚紩鐢ㄧ殑鏃跺�欎細鎶涘嚭寮傚父
+ */
+ private boolean checkIsLinked(String oid) throws VciBaseException{
+ //TODO 娣诲姞闇�瑕佹牎楠屽紩鐢ㄧ殑鍦版柟
+ return false;
+ }
+
+ /**
+ * 涓婚敭鏌ヨ鏁版嵁瀵硅薄
+ * @param oid 涓婚敭
+ * @return 鏁版嵁瀵硅薄
+ * @throws VciBaseException 鍙傛暟涓虹┖锛屽苟涓旀暟鎹笉瀛樺湪鐨勬椂鍊欎細鎶涘嚭寮傚父
+ */
+ private CodeClassifyTemplateButton selectByOid(String oid) throws VciBaseException{
+ VciBaseUtil.alertNotNull(oid,"涓婚敭");
+ HashMap<String, String> conditionMap = new HashMap<>();
+ conditionMap.put("oid",oid);
+ MPJLambdaWrapper<CodeClassifyTemplateButton> mpjLambdaWrapper = getMPJLambdaWrapper(conditionMap);
+ CodeClassifyTemplateButton codeClassifyTemplateButtonDO = codeClassifyTemplateButtonMapper.selectOne(mpjLambdaWrapper);
+ if(codeClassifyTemplateButtonDO == null || StringUtils.isBlank(codeClassifyTemplateButtonDO.getOid())){
+ throw new VciBaseException(DATA_OID_NOT_EXIST);
+ }
+ return codeClassifyTemplateButtonDO;
+ }
+
+ /**
+ * 妯℃澘鍒犻櫎鐨勬椂鍊欒Е鍙�
+ *
+ * @param classifyTemplateOid 妯℃澘鐨勪富閿�
+ * @return 鍙楀奖鍝嶇殑鏁版嵁琛�
+ */
+ @Override
+ public int codeTemplateDeleteTrigger(String classifyTemplateOid) {
+ int updateCount = 0;
+ if(StringUtils.isNotBlank(classifyTemplateOid)){
+ Map<String,Object> conditionMap = new HashMap<>();
+ conditionMap.put("classifyTemplateOid",classifyTemplateOid);
+ List<CodeClassifyTemplateButton> codeTempbuttonEntities = baseMapper.selectByMap(conditionMap);
+ if(!CollectionUtils.isEmpty(codeTempbuttonEntities)){
+ updateCount += baseMapper.deleteBatchIds(codeTempbuttonEntities.stream()
+ .map(CodeClassifyTemplateButton::getOid).collect(Collectors.toList()));
+ }
+ }
+ return updateCount;
+ }
+
+ /**
+ * 浣跨敤妯℃澘涓婚敭鑾峰彇鎵╁睍鐨勬寜閽�
+ *
+ * @param templateOid 妯℃澘鐨勪富閿�
+ * @param hasButtonVO 鏄惁鍖呭惈鎸夐挳鐨勬樉绀轰俊鎭�
+ * @return 鎸夐挳鐨勭浉鍏崇殑淇℃伅
+ */
+ @Override
+ public List<CodeClassifyTemplateButtonVO> listButtonByTemplateOid(String templateOid, boolean hasButtonVO) {
+ if(StringUtils.isBlank(templateOid)){
+ return new ArrayList<>();
+ }
+// Map<String,String> conditionMap = new HashMap<>();
+// conditionMap.put("classifyTemplateOid",templateOid);
+// PageHelper pageHelper = new PageHelper(-1);
+// pageHelper.addDefaultAsc("orderNum");
+ QueryWrapper<CodeClassifyTemplateButton> wrapper = new QueryWrapper<>();
+ wrapper.eq("classifyTemplateOid",templateOid);
+ wrapper.orderByAsc("orderNum");
+ List<CodeClassifyTemplateButton> templateButtonDOS = codeClassifyTemplateButtonMapper.selectList(wrapper);
+ return codeClassifyTemplateButtonDO2VOs(templateButtonDOS,hasButtonVO);
+ }
+
+}
--
Gitblit v1.9.3