From 037c79142510f864f16931117ab308c9adbefa77 Mon Sep 17 00:00:00 2001 From: yuxc <yuxc@vci-tech.com> Date: 星期五, 02 八月 2024 15:43:41 +0800 Subject: [PATCH] 查询模板的列表查询,保存查询模板功能 --- Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/OsQueryTemplateController.java | 85 +++++++++++++++++ Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsQueryTemplateImpl.java | 119 +++++++++++++++++++++++ Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/OsQuereyTemplateServiceI.java | 39 +++++++ 3 files changed, 243 insertions(+), 0 deletions(-) diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/OsQueryTemplateController.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/OsQueryTemplateController.java new file mode 100644 index 0000000..447ebd1 --- /dev/null +++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/OsQueryTemplateController.java @@ -0,0 +1,85 @@ +package com.vci.web.controller; + +import com.vci.corba.common.PLException; +import com.vci.corba.omd.ltm.LinkType; +import com.vci.corba.omd.qtm.QTD; +import com.vci.pagemodel.OsBtmTypeAttributeVO; +import com.vci.pagemodel.OsLinkTypeAttributeVO; +import com.vci.pagemodel.OsLinkTypeVO; +import com.vci.starter.web.annotation.controller.VciUnCheckRight; +import com.vci.starter.web.exception.VciBaseException; +import com.vci.starter.web.pagemodel.BaseQueryObject; +import com.vci.starter.web.pagemodel.BaseResult; +import com.vci.starter.web.pagemodel.DataGrid; +import com.vci.starter.web.util.VciBaseUtil; +import com.vci.web.service.OsLinkTypeServiceI; +import com.vci.web.service.OsQuereyTemplateServiceI; +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.util.CollectionUtils; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; + +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.util.Arrays; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 鏌ヨ妯℃澘鐨勬帶鍒跺櫒 + * @author weidy + * @date 2022-3-26 + */ +@RequestMapping("/templateController") +@RestController +public class OsQueryTemplateController { + + /** + * 鏌ヨ妯℃澘鏈嶅姟 + */ + @Autowired + private OsQuereyTemplateServiceI quereyTemplateServiceI; + + /** + * 鏃ュ織 + */ + private Logger logger = LoggerFactory.getLogger(getClass()); + + /** + * 鏌ヨ妯℃澘鐨勫垪琛� + * @param btmName 绫诲瀷 + * @param linkFlag 鏄惁閾炬帴绫诲瀷 锛歵rue 閾炬帴绫诲瀷 锛宖alse 涓氬姟绫诲瀷 + * @return 鏌ヨ妯℃澘鐨勫垪琛� + */ + @GetMapping("/queryTemplateList") + public BaseResult queryTemplateList(String btmName,Boolean linkFlag){ + try { + return quereyTemplateServiceI.queryTemplateList(btmName,linkFlag); + } catch (PLException e) { + BaseResult objectBaseResult = new BaseResult<>(); + objectBaseResult.setCode(Integer.parseInt(e.code)); + objectBaseResult.setMsg(Arrays.toString(e.messages)); + return objectBaseResult; + } + } + + /** + * 鏌ヨ妯℃澘 + * @param qtd 鏌ヨ妯℃澘瀹炰綋绫� + * @return 淇濆瓨缁撴灉 + */ + @PostMapping("/saveTemplate") + public BaseResult saveTemplate(@RequestBody QTD qtd){ + try { + return quereyTemplateServiceI.saveTemplate(qtd); + } catch (PLException e) { + BaseResult objectBaseResult = new BaseResult<>(); + objectBaseResult.setCode(Integer.parseInt(e.code)); + objectBaseResult.setMsg(Arrays.toString(e.messages)); + return objectBaseResult; + } + } +} diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/OsQuereyTemplateServiceI.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/OsQuereyTemplateServiceI.java new file mode 100644 index 0000000..c4458c0 --- /dev/null +++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/OsQuereyTemplateServiceI.java @@ -0,0 +1,39 @@ +package com.vci.web.service; + +import com.vci.corba.common.PLException; +import com.vci.corba.omd.ltm.LinkType; +import com.vci.corba.omd.qtm.QTD; +import com.vci.pagemodel.OsBtmTypeAttributeVO; +import com.vci.pagemodel.OsLinkTypeAttributeVO; +import com.vci.pagemodel.OsLinkTypeVO; +import com.vci.starter.web.pagemodel.BaseQueryObject; +import com.vci.starter.web.pagemodel.BaseResult; +import com.vci.starter.web.pagemodel.DataGrid; +import org.springframework.web.multipart.MultipartFile; + +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.util.Collection; +import java.util.List; +import java.util.Map; + +/** + * 鏌ヨ妯℃澘鏈嶅姟 + * @author yuxc + * @date 2024-8-1 + */ +public interface OsQuereyTemplateServiceI{ + /** + * 鏌ヨ妯℃澘鐨勫垪琛� + * @param btmName 绫诲瀷 + * @param linkFlag 鏄惁閾炬帴绫诲瀷 锛歵rue 閾炬帴绫诲瀷 锛宖alse 涓氬姟绫诲瀷 + * @return 鏌ヨ妯℃澘鐨勫垪琛� + */ + BaseResult queryTemplateList(String btmName, Boolean linkFlag) throws PLException; + /** + * 鏌ヨ妯℃澘 + * @param qtd 鏌ヨ妯℃澘瀹炰綋绫� + * @return 淇濆瓨缁撴灉 + */ + BaseResult saveTemplate(QTD qtd) throws PLException; +} diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsQueryTemplateImpl.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsQueryTemplateImpl.java new file mode 100644 index 0000000..7b577ba --- /dev/null +++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsQueryTemplateImpl.java @@ -0,0 +1,119 @@ +package com.vci.web.service.impl; + +import cn.hutool.core.io.FileUtil; +import cn.hutool.core.util.ZipUtil; +import com.fasterxml.jackson.core.type.TypeReference; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.vci.constant.FrameWorkLangCodeConstant; +import com.vci.corba.common.PLException; +import com.vci.corba.omd.atm.AttributeDef; +import com.vci.corba.omd.btm.BizType; +import com.vci.corba.omd.data.BusinessObject; +import com.vci.corba.omd.ltm.LinkType; +import com.vci.corba.omd.qtm.QTD; +import com.vci.model.OsLinkTypeDO; +import com.vci.omd.utils.ObjectTool; +import com.vci.pagemodel.*; +import com.vci.po.OsLinkTypePO; +import com.vci.starter.poi.bo.ReadExcelOption; +import com.vci.starter.poi.bo.WriteExcelData; +import com.vci.starter.poi.bo.WriteExcelOption; +import com.vci.starter.poi.constant.ExcelLangCodeConstant; +import com.vci.starter.poi.util.ExcelUtil; +import com.vci.starter.web.annotation.log.VciUnLog; +import com.vci.starter.web.enumpck.VciFieldTypeEnum; +import com.vci.starter.web.exception.VciBaseException; +import com.vci.starter.web.pagemodel.BaseQueryObject; +import com.vci.starter.web.pagemodel.BaseResult; +import com.vci.starter.web.pagemodel.DataGrid; +import com.vci.starter.web.util.*; +import com.vci.web.service.*; +import com.vci.web.util.Func; +import com.vci.web.util.PlatformClientUtil; +import com.vci.web.util.WebUtil; +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Lazy; +import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; +import org.springframework.web.multipart.MultipartFile; + +import javax.servlet.http.HttpServletResponse; +import java.io.File; +import java.io.IOException; +import java.util.*; +import java.util.stream.Collectors; + +/** + * 鏌ヨ妯℃澘鏈嶅姟 + * @author yuxc + * @date 2024-8-1 + */ +@Service +public class OsQueryTemplateImpl implements OsQuereyTemplateServiceI { + + + /** + * 骞冲彴鐨勮皟鐢ㄥ伐鍏风被 + */ + @Autowired + private PlatformClientUtil platformClientUtil; + + /** + * 鏌ヨ妯℃澘鐨勫垪琛� + * @param btmName 绫诲瀷 + * @param linkFlag 鏄惁閾炬帴绫诲瀷 锛歵rue 閾炬帴绫诲瀷 锛宖alse 涓氬姟绫诲瀷 + * @return 鏌ヨ妯℃澘鐨勫垪琛� + */ + @Override + public BaseResult queryTemplateList(String btmName, Boolean linkFlag) throws PLException { + QTD[] qtdArray = null; + if(linkFlag){ + qtdArray = platformClientUtil.getQTDService().getLinkTypeQTDs(btmName); + }else { + qtdArray = platformClientUtil.getQTDService().getBizTypeQTDs(btmName); + } + return BaseResult.dataList(Arrays.asList(qtdArray)); + } + + /** + * 鏌ヨ妯℃澘 + * @param qtd 鏌ヨ妯℃澘瀹炰綋绫� + * @return 淇濆瓨缁撴灉 + */ + @Override + public BaseResult saveTemplate(QTD qtd) throws PLException { + //鏍¢獙鍙傛暟 + checkName(qtd); + //璁剧疆榛樿鍊� + qtd.creator = WebUtil.getCurrentUserId(); + qtd.createTime = System.currentTimeMillis(); + boolean addFlag = false; + //杩涜淇濆瓨 + addFlag = platformClientUtil.getQTDService().addQTD(qtd); + if (addFlag) { + return BaseResult.success("澧炲姞涓氬姟绫诲瀷鏌ヨ妯℃澘鎴愬姛"); + } else { + throw new PLException("500", new String[]{"澧炲姞涓氬姟绫诲瀷鏌ヨ妯℃澘澶辫触"}); + } + } + + /** + * 鏍¢獙鍙傛暟 + * @param qtd + * @return + */ + private void checkName(QTD qtd) throws PLException { + if (qtd.name.equals("")) { + throw new PLException("500", new String[]{"璇疯緭鍏ユā鏉垮畾涔夊悕"}); + } + if (!qtd.name.matches("[a-z A-Z]*")) { + throw new PLException("500", new String[]{"妯℃澘瀹氫箟鍚嶅彧鑳戒负鑻辨枃瀛楁瘝"}); + } + if (platformClientUtil.getQTDService().isExistsQTD(qtd.name.toLowerCase())) { + throw new PLException("500", new String[]{"璇ユā鏉垮畾涔夊悕宸茬粡琚娇鐢�, 璇锋洿鎹�"}); + } + } +} -- Gitblit v1.9.3