yuxc
2024-08-02 037c79142510f864f16931117ab308c9adbefa77
查询模板的列表查询,保存查询模板功能
已添加3个文件
243 ■■■■■ 文件已修改
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/OsQueryTemplateController.java 85 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/OsQuereyTemplateServiceI.java 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/OsQueryTemplateImpl.java 119 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
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 æ˜¯å¦é“¾æŽ¥ç±»åž‹ ï¼štrue é“¾æŽ¥ç±»åž‹ ï¼Œfalse ä¸šåŠ¡ç±»åž‹
     * @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;
        }
    }
}
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 æ˜¯å¦é“¾æŽ¥ç±»åž‹ ï¼štrue é“¾æŽ¥ç±»åž‹ ï¼Œfalse ä¸šåŠ¡ç±»åž‹
     * @return æŸ¥è¯¢æ¨¡æ¿çš„列表
     */
    BaseResult queryTemplateList(String btmName, Boolean linkFlag) throws PLException;
    /**
     * æŸ¥è¯¢æ¨¡æ¿
     * @param qtd æŸ¥è¯¢æ¨¡æ¿å®žä½“ç±»
     * @return ä¿å­˜ç»“æžœ
     */
    BaseResult saveTemplate(QTD qtd) throws PLException;
}
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 æ˜¯å¦é“¾æŽ¥ç±»åž‹ ï¼štrue é“¾æŽ¥ç±»åž‹ ï¼Œfalse ä¸šåŠ¡ç±»åž‹
     * @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[]{"该模板定义名已经被使用, è¯·æ›´æ¢"});
        }
    }
}