yuxc
2023-09-14 108816cf6e7c2e211a487b4f14d6250a5bea732b
Merge remote-tracking branch 'origin/master'
已修改21个文件
573 ■■■■■ 文件已修改
Source/UBCS-WEB/src/api/docking/loge.js 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/components/FormTemplate/FormTemplate.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/components/dockingSearch/VciDockingSearch.vue 47 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/components/refer/vciWebRefer.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/views/docking/data.vue 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/views/docking/loge.vue 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/views/docking/task.vue 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/views/system/PasswordManagement/passwords.vue 147 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/util/UBCSCondition.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/util/UBCSSqlKeyword.java 46 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeApplySwingController.java 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/DockingManagementController.java 54 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingSystemConfigService.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDokingSysManaentService.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeDuckingSyncServiceImpl.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSystemConfigServiceImpl.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DokingSysManaentServiceImpl.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/resources/application-dev.yml 95 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/resources/application-prod.yml 95 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/api/docking/loge.js
@@ -1,13 +1,13 @@
import request from '@/router/axios';
export const getList = (page, size, params) => {
export const getList = (page, limit, params) => {
  return request({
    url: '/api/ubcs-code/dockingManagement/gridLoge',
    method: 'get',
    params: {
      ...params,
      page,
      size
      limit
    }
  })
}
Source/UBCS-WEB/src/components/FormTemplate/FormTemplate.vue
@@ -221,7 +221,7 @@
          format: formItem.dateFormate,
          keyAttr: formItem.keyAttr,
          value: (formItem.dicData && formItem.dicData.length > 0 && formItem.secType == "codefixedsec" ? formItem.dicData[0].id : null) ||
            ( TreeValue&& formItem.secType == "codelevelsec" ? TreeValue : null),
            (formItem.secType == "codedatesec"?formItem.codeDateValue: null) || ( TreeValue&& formItem.secType == "codelevelsec" ? TreeValue : null),
          placeholder: formItem.inputTip,
          comboxKey: formItem.comboxKey,
          tip: formItem.tooltips,
Source/UBCS-WEB/src/components/dockingSearch/VciDockingSearch.vue
@@ -60,7 +60,7 @@
<!--      公用模块-->
<!--      输入内容-->
      <el-form-item size="small" v-if="shouldShowInput">
        <el-input v-model="formInline.text" placeholder="请输入内容" @keyup.enter.native="SaveHandler"></el-input>
        <el-input v-model="formInline.text" placeholder="按下回车键进行查询!" @keyup.enter.native="SaveHandler"></el-input>
      </el-form-item>
<!--      查询按钮-->
      <el-form-item size="small" v-if="shouldShowButton">
@@ -117,13 +117,50 @@
    },
    SaveHandler(){
      let name = this.SearchObject.searchData[this.formInline.type].prop;
      getList(this.page.currentPage, this.page.pageSize, { [`conditionMap['${name}_like']`]: this.formInline.text}).then(res => {
      getList(this.page.currentPage, this.page.pageSize, { [`conditionMap[${name}_like]`]: this.formInline.text}).then(res => {
        console.log(res);
      });
    },
    handleSearch(){
      let formattedDate = this.$moment(this.formInline.Date).format('YYYY-M-D');
      console.log('formattedDate',formattedDate);
    handleSearch() {
      const { type, typeFlag, stateFlag, stateTaskDataFlag, dateFlag, lastDateFlag ,sendTypeFlga} = this.status;
      const { currentPage, pageSize } = this.page;
      const { cut, state, stateTask, Date, lastDate, taskCut } = this.formInline;
      const requestParams = {};
      // 集成日志类型
      if (type === 'loge' && typeFlag) {
        requestParams['conditionMap[type_like]'] = cut;
      }
      // 集成日志是否成功
      if (type === 'loge' && stateFlag) {
        requestParams['conditionMap[interfaceStatus_like]'] = state;
      }
      // 集成任务 是否推送成功  集成数据  是否分解任务
      if ((type === 'task' || type === 'data') && stateTaskDataFlag) {
        requestParams['conditionMap[sendFlag_like]'] = stateTask;
      }
      // 集成任务 创建日期 和 集成日志 记录时间
      if ((type === 'loge' || type === 'task') && dateFlag) {
        const formattedDate = this.$moment(Date).format('YYYY-M-D');
        requestParams['conditionMap[createTime_like]'] = formattedDate;
      }
      // 集成任务 最后推送时间
      if (type === 'task' && lastDateFlag) {
        const formattedDate = this.$moment(lastDate).format('YYYY-M-D');
        requestParams['conditionMap[lastModifyTime_like]'] = formattedDate;
      }
      // 集成任务 集成数据 推送类型
      if ((type === 'task' || type === 'data') && sendTypeFlga) {
        requestParams['conditionMap[sendType_like]'] = taskCut;
      }
      // 请求
      getList(currentPage, pageSize, requestParams).then(res => {
        if(!res.data.data.records){
          this.$message.error('暂未查到数据!')
        }else {
          let Data=res.data.data.records;
          this.$emit('getList',Data)
        }
      });
    }
  }
}
Source/UBCS-WEB/src/components/refer/vciWebRefer.vue
@@ -17,6 +17,7 @@
  components: {vciWebReferTree, vciWebReferTable, vciWebReferDefalut},
  data() {
    return {
      reterTypeLeavl:'213',
      refertype: this.referConfig.options.type,
      emitData:{},
      title:'',
Source/UBCS-WEB/src/views/docking/data.vue
@@ -16,7 +16,7 @@
               @refresh-change="refreshChange"
               @on-load="onLoad">
      <template slot-scope="scope" slot="menuLeft">
        <vci-docking-search :SearchObject="SearchObject" :page="page" :formInline="formInline" :status="status"></vci-docking-search>
        <vci-docking-search :SearchObject="SearchObject" :page="page" :formInline="formInline" :status="status" @getList="dockingGetList"></vci-docking-search>
      </template>
    </avue-crud>
  </basic-container>
@@ -189,6 +189,9 @@
    }
  },
  methods: {
    dockingGetList(val){
      this.data=val;
    },
    async cellDbClick(row, column, cell, event) {
      for (const key in row) {
        if (key === column.property) {
Source/UBCS-WEB/src/views/docking/loge.vue
@@ -3,7 +3,7 @@
  <basic-container>
    <avue-crud :option="option"
               :table-loading="loading"
               :data="data"
               :data="data || getList"
               :page.sync="page"
               :permission="permissionList"
               ref="crud"
@@ -16,7 +16,7 @@
               @refresh-change="refreshChange"
               @on-load="onLoad">
      <template slot-scope="scope" slot="menuLeft">
        <vci-docking-search :SearchObject="SearchObject" :page="page" :formInline="formInline" :status="status"></vci-docking-search>
        <vci-docking-search :SearchObject="SearchObject" :page="page" :formInline="formInline" :status="status" @getList="dockingGetList"></vci-docking-search>
      </template>
    </avue-crud>
  </basic-container>
@@ -218,6 +218,10 @@
    }
  },
  methods: {
    dockingGetList(val){
      console.log(val,'val')
      this.data=val;
    },
    async cellDbClick(row, column, cell, event) {
      for (const key in row) {
        if (key === column.property) {
Source/UBCS-WEB/src/views/docking/task.vue
@@ -23,7 +23,7 @@
                     @click="handleSend">手动推送
          </el-button>
        <div style="float: right;margin-left: 10px">
          <vci-docking-search :formInline="formInline" :SearchObject="SearchObject" :page="page" :status="status"></vci-docking-search>
          <vci-docking-search :formInline="formInline" :SearchObject="SearchObject" :page="page" :status="status" @getList="dockingGetList"></vci-docking-search>
        </div>
      </template>
    </avue-crud>
@@ -242,6 +242,9 @@
    }
  },
  methods: {
    dockingGetList(val){
      this.data=val;
    },
    async cellDbClick(row, column, cell, event) {
      for (const key in row) {
        if (key === column.property) {
Source/UBCS-WEB/src/views/system/PasswordManagement/passwords.vue
@@ -312,12 +312,6 @@
      checkboxedit:"",
      // 用于判断是否是编辑
      editFlag:false
    //  至于为什么没在用户选择必填种类大于组合方式的时候,给下拉菜单选中的数据清空了,这样比给予弹窗提醒更合理
    //  原因是找了好久没找到avue框架这个选中的属性显示在页面怎么修改,直接修改下拉菜单数据的value没效果,找不到是什么控制这页面显示的选中数据
    //  我尝试在dicdata外面定义value修改下拉菜单显示的默认值也不行,然后再尝试调用avue的close清除方法,但是也是只能实现在下拉菜单后面显示一个X号
    //  当用户手动点击清除,才可以把数据清除,总而言之找了好久,没找到这个清除方法,avue的说明文档也没明确标明这个功能的内置操作方法
    //  我想到的应该可以的方法是,舍弃option里面的组合方式,自己手动在页面添加插槽定义组合方式,至于是使用avue还是element-ui来写,还要看具体的步骤
    //  因为一改动,我现在写的逻辑比如下拉菜单禁用和策略验证等等要重新梳理,我这边急着赶对象建模的进度,所以先用这种方式来处理,如果我回头有时间我再来继续改,就没有这条注释了。
    }
  },
@@ -336,125 +330,36 @@
      //   console.log("大于")
      // }
    },
    handleCheckboxChange(val){
      const arr=this.option.column[5];
      this.checkboxlength=val.value;
      //添加的时候checkboxlength是一个数组,到了编辑他就是一个字符串,如果我我直接转换为数组,因为本来就是数组所以点击添加的时候会报错
      //如果我变成字符串后再转数组,添加不会报错了,但是编辑的时候就又会报错了,本来就是字符串又走了一遍tostring
      this.checkboxedit=this.checkboxlength.toString().split(",")
      if(val.value != undefined && val.value != null){
        if(this.checkboxlist == val.value){
        //  判断相等则不操作,不等则重新执行。加这层判断是因为change事件触发两次,会出现两个消息提示框
        //  定义checkboxlist变量,存储的改变的值,如果值改变和变量相等则不需要任何操作
        }else {
          this.checkboxlist=val.value
          if( this.selectlength.value >= val.value.length && val.value.length > 0 ){
            this.$message({
              message: '必填种类不能大于组合方法,请重新选择!',
              type: 'warning',
              showClose: true,
            });
          }else if(this.selectlength.value >= this.checkboxedit.length  && this.checkboxedit.length > 0 ){
            this.$message({
              message: '必填种类不能大于组合方法,请重新选择!',
              type: 'warning',
              showClose: true,
            });
    handleCheckboxChange(val) {
      const arr = this.option.column[5];
      this.checkboxlength = val.value;
      this.checkboxedit = this.checkboxlength.toString().split(",");
      if (val.value != undefined && val.value != null) {
        if (this.checkboxlist == val.value) {
        } else {
          this.checkboxlist = val.value;
          if (
            this.selectlength.value >= val.value.length &&
            val.value.length > 0
          ) {
            this.showMessage("必填种类不能大于组合方法,请重新选择!");
          } else if (
            this.selectlength.value >= this.checkboxedit.length &&
            this.checkboxedit.length > 0
          ) {
            this.showMessage("必填种类不能大于组合方法,请重新选择!");
          }
        }
          // if(this.checkboxeditlist == val.value){
          // //  tong
          // }else {
          //   this.checkboxeditlist=val.value
          //   if(this.selectlength.value >= this.checkboxedit.length  && this.checkboxedit.length > 0){
          //     this.$message({
          //       message: '必填种类不能大于组合方法,请重新选择!',
          //       type: 'warning',
          //       showClose: true,
          //     });
          //   }
          // }
        //  if(this.selectlength.value >= this.checkboxedit.length  && this.checkboxedit.length > 0){
        //   this.$message({
        //     message: '必填种类不能大于组合方法,请重新选择!',
        //     type: 'warning',
        //     showClose: true,
        //   });
        // }
      }
      // 这里一直报length的错误
      // arr.forEach((item,index)=>{
      //   console.log(item,index)
      //   if(val.value != undefined && val.value != null && val.value.length==0){
      //     item.disabled=false
      //   }
      //   if(val.value != undefined && val.value != null && val.value.length>=1){
      //
      //    }
      // })
      // if(val.value != undefined && val.value != null && val.value.length >= 0){
      //   arr.dicData[val.value.length-1].disabled=true
      // }
      // }else if(val.value != undefined && val.value != null && val.value.length ==0){
      //   arr.dicData.disabled=false
      // }
      if(val.value != undefined && val.value != null && val.value.length == 1){
        arr.dicData[0].disabled=false
        arr.dicData[1].disabled=true
        arr.dicData[2].disabled=true
        arr.dicData[3].disabled=true
      }else if(val.value != undefined && val.value != null && val.value.length ==2){
        arr.dicData[0].disabled=false
        arr.dicData[1].disabled=false
        arr.dicData[2].disabled=true
        arr.dicData[3].disabled=true
      }else if(val.value != undefined && val.value != null && val.value.length ==3){
        arr.dicData[0].disabled=false
        arr.dicData[1].disabled=false
        arr.dicData[2].disabled=false
        arr.dicData[3].disabled=true
      }else if(val.value != undefined && val.value != null && val.value.length==4){
        arr.dicData[0].disabled=false
        arr.dicData[1].disabled=false
        arr.dicData[2].disabled=false
        arr.dicData[3].disabled=false
      }else if(val.value != undefined && val.value != null && val.value.length==0  ){
         arr.dicData[0].disabled=true
         arr.dicData[1].disabled=true
         arr.dicData[2].disabled=true
         arr.dicData[3].disabled=true
      }else if(this.checkboxNumber.length!=0){
        arr.dicData[0].disabled=false
        arr.dicData[1].disabled=false
        arr.dicData[2].disabled=false
        arr.dicData[3].disabled=false
      const disabledCount = Math.min(this.checkboxedit.length, 4);
      for (let i = 0; i < arr.dicData.length; i++) {
        arr.dicData[i].disabled = i >= disabledCount;
      }
      if(this.editFlag == true){
        if(this.checkboxedit.length == 1){
          arr.dicData[0].disabled=false
          arr.dicData[1].disabled=true
          arr.dicData[2].disabled=true
          arr.dicData[3].disabled=true
        }else if(this.checkboxedit.length == 2){
          arr.dicData[0].disabled=false
          arr.dicData[1].disabled=false
          arr.dicData[2].disabled=true
          arr.dicData[3].disabled=true
        }else if(this.checkboxedit.length ==3){
          arr.dicData[0].disabled=false
          arr.dicData[1].disabled=false
          arr.dicData[2].disabled=false
          arr.dicData[3].disabled=true
        }else if(this.checkboxedit ==4){
          arr.dicData[0].disabled=false
          arr.dicData[1].disabled=false
          arr.dicData[2].disabled=false
          arr.dicData[3].disabled=false
        }else if(this.checkboxedit.length ==0){
          arr.dicData[0].disabled=true
          arr.dicData[1].disabled=true
          arr.dicData[2].disabled=true
          arr.dicData[3].disabled=true
      if (this.editFlag == true) {
        const disabledCount = Math.min(this.checkboxedit.length, 4);
        for (let i = 0; i < arr.dicData.length; i++) {
          arr.dicData[i].disabled = i >= disabledCount;
        }
      }
    },
Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/util/UBCSCondition.java
@@ -1,16 +1,19 @@
package com.vci.ubcs.starter.util;
import com.alibaba.cloud.commons.lang.StringUtils;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.metadata.OrderItem;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import com.vci.ubcs.starter.web.util.VciBaseUtil;
import org.springblade.core.mp.support.Query;
import org.springblade.core.tool.support.Kv;
import org.springblade.core.tool.utils.BeanUtil;
import org.springblade.core.tool.utils.Func;
import org.springblade.core.tool.utils.StringUtil;
import java.util.HashMap;
import java.util.Map;
/**
Source/UBCS/ubcs-service-api/ubcs-util-api/src/main/java/com/vci/ubcs/starter/util/UBCSSqlKeyword.java
@@ -248,8 +248,52 @@
            });
        }
    }
    public static  MPJLambdaWrapper buildConditionByMapString(Map<String, String> query) {
        MPJLambdaWrapper<?>qw=new MPJLambdaWrapper<>();
        if (!Func.isEmpty(query)) {
            query.forEach((k, v) -> {
                if (!Func.hasEmpty(new Object[]{k, v}) && !k.endsWith("_ignore")) {
                    if (k.endsWith("_like")) {
                        qw.like(getColumn(k, "_like"), v);
                    } else if (k.endsWith("_notequal")) {
                        qw.ne(getColumn(k, "_notequal"), v);
                    } else if (k.endsWith("_likeleft")) {
                        qw.likeLeft(getColumn(k, "_likeleft"), v);
                    } else if (k.endsWith("_likeright")) {
                        qw.likeRight(getColumn(k, "_likeright"), v);
                    } else if (k.endsWith("_notlike")) {
                        qw.notLike(getColumn(k, "_notlike"), v);
                    } else if (k.endsWith("_ge")) {
                        qw.ge(getColumn(k, "_ge"), v);
                    } else if (k.endsWith("_le")) {
                        qw.le(getColumn(k, "_le"), v);
                    } else if (k.endsWith("_gt")) {
                        qw.gt(getColumn(k, "_gt"), v);
                    } else if (k.endsWith("_lt")) {
                        qw.lt(getColumn(k, "_lt"), v);
                    } else if (k.endsWith("_datege")) {
                        qw.ge(getColumn(k, "_datege"), DateUtil.parse(String.valueOf(v), "yyyy-MM-dd HH:mm:ss"));
                    } else if (k.endsWith("_dategt")) {
                        qw.gt(getColumn(k, "_dategt"), DateUtil.parse(String.valueOf(v), "yyyy-MM-dd HH:mm:ss"));
                    } else if (k.endsWith("_dateequal")) {
                        qw.eq(getColumn(k, "_dateequal"), DateUtil.parse(String.valueOf(v), "yyyy-MM-dd HH:mm:ss"));
                    } else if (k.endsWith("_datele")) {
                        qw.le(getColumn(k, "_datele"), DateUtil.parse(String.valueOf(v), "yyyy-MM-dd HH:mm:ss"));
                    } else if (k.endsWith("_datelt")) {
                        qw.lt(getColumn(k, "_datelt"), DateUtil.parse(String.valueOf(v), "yyyy-MM-dd HH:mm:ss"));
                    } else if (k.endsWith("_null")) {
                        qw.isNull(getColumn(k, "_null"));
                    } else if (k.endsWith("_notnull")) {
                        qw.isNotNull(getColumn(k, "_notnull"));
                    } else {
                        qw.eq(getColumn(k, "_equal"), v);
                    }
                }
            });
        };
        return qw;
    }
    public static void buildConditionByMapString(Map<String, String> query, MPJLambdaWrapper<?> qw) {
        if (!Func.isEmpty(query)) {
            query.forEach((k, v) -> {
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeApplySwingController.java
@@ -25,6 +25,7 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -240,12 +241,16 @@
    /**
     * 集团/企业码段判断
     * @param parameter 传入数据 ,classifyGroupCode:配置的中的分类顶节点,oid:选择节点的oid--,nowApplyCode:当前申请编码的分类
     * @param classifyGroupCode 传入数据 ,classifyGroupCode:配置的中的分类顶节点
     * @param oid 传入数据 ,选择节点的oid--,nowApplyCode:当前申请编码的分类
     * @return 执行结果
     */
    @GetMapping("/checkGroupCode")
    @VciBusinessLog(operateName = "集团/企业码段判断")
    public R checkGroupCode(Map<String,String> parameter) throws Exception {
        return R.data(mdmEngineService.checkGroupCode(parameter));
    public R checkGroupCode(String oid,String  classifyGroupCode) throws Exception {
        Map<String,String> codtionMap=new HashMap<>();
        codtionMap.put("oid",oid);
        codtionMap.put("classifyGroupCode",classifyGroupCode);
        return R.data(mdmEngineService.checkGroupCode(codtionMap));
    }
}
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/DockingManagementController.java
@@ -1,7 +1,9 @@
package com.vci.ubcs.code.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import com.vci.ubcs.code.dto.DockingSystemConfigDTO;
import com.vci.ubcs.code.dto.DockingSystemDTO;
import com.vci.ubcs.code.dto.DockingTaskDTO;
@@ -11,6 +13,7 @@
import com.vci.ubcs.code.vo.pagemodel.*;
import com.vci.ubcs.code.wrapper.*;
import com.vci.ubcs.starter.exception.VciBaseException;
import com.vci.ubcs.starter.util.UBCSSqlKeyword;
import com.vci.ubcs.starter.web.pagemodel.BaseQueryObject;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@@ -18,8 +21,10 @@
import org.springblade.core.mp.support.Condition;
import org.springblade.core.mp.support.Query;
import org.springblade.core.tool.api.R;
import org.springframework.util.CollectionUtils;
import org.springframework.web.bind.annotation.*;
import java.util.HashMap;
import java.util.Map;
/**
@@ -53,14 +58,17 @@
    private final     ICodeDuckingSyncService codeDuckingSyncService;
    /**系统集成的系统信息列表
     * @param dockingSystem 基础查询对象,包含查询条件,分页,排序等
     * @param condtionMap 基础查询对象,包含查询条件,分页,排序等
     *@return 系统集成的系统信息显示对象列表
     */
    @GetMapping("/gridDockingSystem")
    @ApiOperationSupport(order = 3)
    @ApiOperation(value = "分页", notes = "dockingSystem")
    public R<IPage<DockingSystemVO>> page(DockingSystem dockingSystem, Query query) {
        IPage<DockingSystem> pages = dockingSystemService.page(Condition.getPage(query), Condition.getQueryWrapper(dockingSystem));
    @ApiOperation(value = "分页", notes = "condtionMap")
    public R<IPage<DockingSystemVO>> page(Map<String,String> condtionMap,Query query) {
        if(!CollectionUtils.isEmpty(condtionMap)){}{
            condtionMap=new HashMap<>();
        }
        IPage<DockingSystem> pages = dockingSystemService.page(Condition.getPage(query),UBCSSqlKeyword.buildConditionByMapString(condtionMap));
        return R.data(DockingSystemWrapper.build().pageVO(pages));
    }
@@ -104,14 +112,17 @@
    }
    /**
     * 系统集成基础信息列表
     * @param dockingSystemConfig 基础查询对象,包含查询条件,分页,排序等
     * @param condtionMap 基础查询对象,包含查询条件,分页,排序等
     * @return 系统集成基础信息显示对象列表
     */
    @GetMapping("/gridSystemConfig")
    @ApiOperationSupport(order = 3)
    @ApiOperation(value = "分页", notes = "dockingSystemConfig")
    public R<IPage<DockingSystemConfigVO>> gridSystemConfig(DockingSystemConfig dockingSystemConfig, Query query){
        IPage<DockingSystemConfigVO>  pages=dockingSystemConfigService.page(dockingSystemConfig,query);
    public R<IPage<DockingSystemConfigVO>> gridSystemConfig(Map<String,String> condtionMap, Query query){
        if(!CollectionUtils.isEmpty(condtionMap)){
            condtionMap=new HashMap<>();
        }
        IPage<DockingSystemConfigVO>  pages=dockingSystemConfigService.page(condtionMap,query);
        return R.data(pages);
    }
@@ -180,41 +191,50 @@
    /**
     * 待集成数据
     * @param dockingData 基础查询对象,包含查询条件,分页,排序等
     * @param condtionMap 基础查询对象,包含查询条件,分页,排序等
     * @return 系统集成基础信息显示对象列表
     */
    @GetMapping("/gridDockingData")
    @ApiOperationSupport(order = 3)
    @ApiOperation(value = "分页", notes = "DockingDataVO")
    public R<IPage<DockingDataVO>> gridDockingData(DockingData dockingData, Query query){
        IPage<DockingDataVO> pages = dokingSysManaentService.gridDockingData(dockingData,query);
    public R<IPage<DockingDataVO>> gridDockingData(Map<String,String>condtionMap, Query query){
        if(!CollectionUtils.isEmpty(condtionMap)){
            condtionMap=new HashMap<>();
        }
        IPage<DockingDataVO> pages = dokingSysManaentService.gridDockingData(condtionMap,query);
        return R.data(pages);
    }
    /**
     * data列表
     * @param dockingTask 基础查询对象,包含查询条件,分页,排序等
     * @param condtionMap 基础查询对象,包含查询条件,分页,排序等
     * @return 系统集成的系统信息显示对象列表
     */
    @GetMapping("/gridDockingTask")
    @ApiOperationSupport(order = 3)
    @ApiOperation(value = "分页", notes = "DockingTaskVO")
    public R<IPage<DockingTaskVO>> gridDockingTask(DockingTask dockingTask, Query query){
        IPage<DockingTaskVO> pages = dokingSysManaentService.gridDockingTask(dockingTask,query);
    @ApiOperation(value = "分页", notes = "condtionMap")
    public R<IPage<DockingTaskVO>> gridDockingTask(Map<String,String> condtionMap, Query query){
        if(!CollectionUtils.isEmpty(condtionMap)){
            condtionMap=new HashMap<>();
        }
        IPage<DockingTaskVO> pages = dokingSysManaentService.gridDockingTask(condtionMap,query);
        return R.data(pages);
    }
    /**
     * 推送数据集成日志列表
     * @param dockingLog 基础查询对象,包含查询条件,分页,排序等
     * @param condtionMap 基础查询对象,包含查询条件,分页,排序等
     * @return 集成日志显示对象列表
     */
    @GetMapping("/gridLoge")
    @ApiOperationSupport(order = 3)
    @ApiOperation(value = "分页", notes = "DockingLogeVO")
    public R<IPage<DockingLogeVO>> gridLoge(DockingLog dockingLog, Query query){
        IPage<DockingLogeVO> pages = dokingSysManaentService.gridLoge(dockingLog,query);
    public R<IPage<DockingLogeVO>> gridLoge(Map<String,String> condtionMap, Query query){
        if(!CollectionUtils.isEmpty(condtionMap)){
            condtionMap=new HashMap<>();
        }
        IPage<DockingLogeVO> pages = dokingSysManaentService.gridLoge(condtionMap,query);
        return R.data(pages);
    }
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingSystemConfigService.java
@@ -11,6 +11,8 @@
import org.springblade.core.mp.support.Query;
import org.springblade.core.tool.api.R;
import java.util.Map;
/***
 * 系统接口管理-接口配置服务
 * @author xiejun
@@ -21,10 +23,10 @@
    /**
     * 系统集成基础信息列表
     * @param dockingSystemConfig 基础查询对象,包含查询条件,分页,排序等
     * @param condtionMap 基础查询对象,包含查询条件,分页,排序等
     * @return 系统集成基础信息显示对象列表
     */
    IPage<DockingSystemConfigVO> page(DockingSystemConfig dockingSystemConfig, Query query);
    IPage<DockingSystemConfigVO> page(Map<String,String> condtionMap, Query query);
    /**
     * 增加 系统集成的接口管理信息
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDokingSysManaentService.java
@@ -5,31 +5,33 @@
import com.vci.ubcs.code.vo.pagemodel.*;
import org.springblade.core.mp.support.Query;
import java.util.Map;
/***
 * 系統管理相关服务
 */
public interface IDokingSysManaentService {
    /**
     * data列表
     * @param dockingTask 基础查询对象,包含查询条件,分页,排序等
     * @param condtionMap 基础查询对象,包含查询条件,分页,排序等
     * @return 系统集成的系统信息显示对象列表
     */
    IPage<DockingTaskVO>gridDockingTask(DockingTask dockingTask, Query query);
    IPage<DockingTaskVO>gridDockingTask(Map<String,String> condtionMap, Query query);
    /**
     * 待集成数据
     * @param dockingData 基础查询对象,包含查询条件,分页,排序等
     * @param condtionMap 基础查询对象,包含查询条件,分页,排序等
     * @return 系统集成基础信息显示对象列表
     */
    IPage<DockingDataVO>gridDockingData(DockingData dockingData, Query query);
    IPage<DockingDataVO>gridDockingData(Map<String,String> condtionMap, Query query);
    /**
     * 推送数据集成日志列表
     * @param dockingLog 基础查询对象,包含查询条件,分页,排序等
     * @param condtionMap 基础查询对象,包含查询条件,分页,排序等
     * @return 集成日志显示对象列表
     */
    IPage<DockingLogeVO>gridLoge(DockingLog dockingLog, Query query);
    IPage<DockingLogeVO>gridLoge(Map<String,String> condtionMap, Query query);
    /**
     * 接口param列表
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeDuckingSyncServiceImpl.java
@@ -156,7 +156,6 @@
     */
    private void initPushDataTaks(int type){
        initSysadmin();
        List<DockingSystemConfig> dockingSystemConfigList = dockingSystemConfigService.list(
            Wrappers.<DockingSystemConfig>query().lambda().eq(DockingSystemConfig::getUsedFlag,"true")
                .eq(DockingSystemConfig::getPushType,type==2?"2":"1").eq(DockingSystemConfig::getDataFlowType, SysIntegrationDataFlowTypeEnum.PUSH.getValue()));//2是代表分类推送,1是代表数据推送
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSystemConfigServiceImpl.java
@@ -35,6 +35,7 @@
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.UBCSSqlKeyword;
import com.vci.ubcs.starter.web.constant.QueryOptionConstant;
import com.vci.ubcs.starter.web.pagemodel.PageHelper;
import com.vci.ubcs.starter.web.util.BeanUtilForVCI;
@@ -135,9 +136,9 @@
    private IDockingLogeService dockingLogeService;
    @Override
    public IPage<DockingSystemConfigVO> page(DockingSystemConfig DockingSystemConfig, Query query) {
    public IPage<DockingSystemConfigVO> page(Map<String,String>codtionMap, Query query) {
        IPage<DockingSystemConfig> pages = page(Condition.getPage(query), Condition.getQueryWrapper(DockingSystemConfig));
        IPage<DockingSystemConfig> pages = page(Condition.getPage(query), UBCSSqlKeyword.buildConditionByMapString(codtionMap));
        List<DockingSystemConfig>  dockingSystemConfigList= pages.getRecords();
        dockingSystemConfigList.stream().forEach(dockingSystemConfig -> {
            dockingSystemConfig.setDataFlowTypeText(SysIntegrationDataFlowTypeEnum.getTextByValue(dockingSystemConfig.getDataFlowType()));
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DokingSysManaentServiceImpl.java
@@ -7,12 +7,15 @@
import com.vci.ubcs.code.service.*;
import com.vci.ubcs.code.vo.pagemodel.*;
import com.vci.ubcs.code.wrapper.*;
import com.vci.ubcs.starter.util.UBCSCondition;
import com.vci.ubcs.starter.util.UBCSSqlKeyword;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.mp.support.Query;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Map;
@Service
public class DokingSysManaentServiceImpl extends ServiceImpl<DockingSystemConfigMapper, DockingSystemConfig> implements IDokingSysManaentService {
@@ -55,29 +58,30 @@
    private  IDockingDataService dockingDataService;
    /**
     * data列表
     * @param dockingTask 基础查询对象,包含查询条件,分页,排序等
     * @param condtionMap 基础查询对象,包含查询条件,分页,排序等
     * @return 系统集成的系统信息显示对象列表
     */
    @Override
    public IPage<DockingTaskVO> gridDockingTask(DockingTask dockingTask, Query query) {
        IPage<DockingTask> pages=dockingTaskService.page(Condition.getPage(query), Condition.getQueryWrapper(dockingTask));
    public IPage<DockingTaskVO> gridDockingTask(Map<String,String> condtionMap, Query query) {
        IPage<DockingTask> pages=dockingTaskService.page(Condition.getPage(query),UBCSSqlKeyword.buildConditionByMapString(condtionMap));
        return DockingTaskWrapper.build().pageVO(pages);
    }
    @Override
    public IPage<DockingDataVO> gridDockingData(DockingData dockingData, Query query) {
        IPage<DockingData> pages=dockingDataService.page(Condition.getPage(query), Condition.getQueryWrapper(dockingData));
    public IPage<DockingDataVO> gridDockingData(Map<String,String> condtionMap, Query query) {
        IPage<DockingData> pages=dockingDataService.page(Condition.getPage(query), UBCSSqlKeyword.buildConditionByMapString(condtionMap));
        return DockingDataWrapper.build().pageVO(pages);
    }
    /**
     * 推送数据集成日志列表
     * @param dockingLog 基础查询对象,包含查询条件,分页,排序等
     * @param condtionMap 基础查询对象,包含查询条件,分页,排序等
     * @return 集成日志显示对象列表
     */
    @Override
    public IPage<DockingLogeVO> gridLoge(DockingLog dockingLog, Query query) {
        IPage<DockingLog> pages=dockingLogeService.page(Condition.getPage(query), Condition.getQueryWrapper(dockingLog));
    public IPage<DockingLogeVO> gridLoge(Map<String,String> condtionMap, Query query) {
        //IPage<DockingLog> pages=dockingLogeService.page(Condition.getPage(query), Condition.getQueryWrapper(dockingLog));
        IPage<DockingLog> pages=dockingLogeService.page(Condition.getPage(query), UBCSSqlKeyword.buildConditionByMapString(condtionMap));
        return DockingLogeWrapper.build().pageVO(pages);
    }
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java
@@ -3697,7 +3697,7 @@
        //使用业务类型查询
        R<BtmTypeVO> allAttributeByBtmId = btmTypeClient.getAllAttributeByBtmId(referConfigVO.getReferType());
        if (!allAttributeByBtmId.isSuccess()) {
            throw new ServiceException("业务类型feign接口调用错误!");
            throw new ServiceException("业务类型feign接口调用错误;"+allAttributeByBtmId.getMsg());
        }
        if (Func.isEmpty(allAttributeByBtmId.getData())) {
            throw new VciBaseException("传入业务类型未查询到相应表单,请检查!");
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java
@@ -1781,10 +1781,10 @@
                                    }
                                    log.info(libId);
                                }else if(secType.equals("codelevelsec")) {//层级码段
                                    int level = codeBasicSecVO.getCodeLevelValue();
                                    CodeClassifyVO levelCodeClassifyVO = new CodeClassifyVO();
                                    CodeClassifyFullInfoBO classifyFullInfoBO = this.classifyService.getClassifyFullInfo(codeClassifyDO.getOid());
                                    if(codeBasicSecVO.getCodeLevelType().equals("code_level_special")){//指定层级
                                        int level = codeBasicSecVO.getCodeLevelValue();
                                        List<CodeClassifyVO> classifyVOS = classifyFullInfoBO.getParentClassifyVOs().stream().sorted(((o1, o2) -> o2.getDataLevel().compareTo(o1.getDataLevel()))).collect(Collectors.toList());
                                        if (classifyVOS.size() >= level && level > 0) {
                                            levelCodeClassifyVO = classifyVOS.get(level - 1);
Source/UBCS/ubcs-service/ubcs-code/src/main/resources/application-dev.yml
@@ -22,98 +22,3 @@
  configuration:
    map-underscore-to-camel-case: false
    call-setters-on-nulls: true
#顶层批量申请配置
batchadd:
  exportattr:
    type: 基本信息
    redis:
      time: 6000000
#统一接口属性映射文件配置
attrconfig:
  #系统集成
  system_attrmap: {RLM: D:\RLM.xml,PDM: D:\pdm.xml,DMS: D:\DMS.xml}
#数据定时推送配置
dataSyncPush:
  isStart: false
  cronTime: "0 0/1 * * * ?"
  dataParamName: dataString
  dataTranTemp: D:\desktop
#分类定时推送配置
clsfSyncPush:
  isStart: false
  cronTime: "0 0/1 * * * ?"
  dataParamName: dataString
  dataTranTemp: D:\desktop
#统一接口相关配置
code:
  universalinterface:
    checkSystemConfig: false
    attrconfig:
      #系统集成
      system_attrmap: {RLM: D:\RLM.xml,PDM: D:\pdm.xml,DMS: D:\DMS.xml}
#mybatis-plus-join:
#  table-alias: t
######应用基本配置
#app:
#  name: web
#  group: 北京宏博远达科技有限公司
#  description: 平台B/S客户端
#  private-token-key: vciweb20210212
###本项目的配置,注意spring家族读取配置时,大写字母需要转换为-的方式,而feign需要大小写完全相同
#session:
#  session-info-storage-type: "database"
#  database-platform: oracle
#  clear-session-on-start: false
#  ###是否开启用户在线检查
#  checkSessionTimeout: false
#  ###客户端判断超时轮询时间,单位为秒
#  sessionInterval: 10
#  ###客户端最大存在时间,单位为分钟
#  sessionIdlTime: 30
#  ###超时提醒时间,单位为分钟
#  sessionRemind: 3
#user-table-compatibility: "platform1"
##受2021版本的部分接口的影响,下面的内容需要配置,
#vciPlatform:
#  objectServiceUrl: ""
#  cache:
##    type: ehcache
#
###web配置
#vciweb:
#  debug: true
#file-preview:
#  enabled: true
#  preview-service-url: "http://dev.yunkeruida.top:28090/vciFilePreview/ajaxPreview.html"
#  preview-system-key: plt2020
#docking:
#  #是否开启主数据/分类数据推送同步
#  insertCache2: false
#  cron: 0 0/1 * * * ?
#  #预申请数据,配置模板文件存放的文件夹
#  templateDir: D:\desktop
#  tranTemp: D:\mes
#  #图号的key
#  tuhao: tuhao
#
#dataSyncPush:
#  isStart: false
#  cronTime: "0 0/1 * * * ?"
#  dataParamName: dataString
#  dataTranTemp: D:\desktop
#clsfSyncPush:
#  isStart: false
#  cronTime: "0 0/1 * * * ?"
#  dataParamName: dataString
#  dataTranTemp: D:\desktop
#
#attrconfig:
#  #系统集成
#  system_attrmap: {RLM: D:\RLM.xml,PDM: D:\pdm.xml,DMS: D:\DMS.xml}
#  #MPM枚举值属性映射
#  mpmEnumMap: {partType: [{enumValue: 1,enumText: 产品},{enumValue: 2,enumText: 产品},{'enumValue': 3,enumText: 标准件},{'enumValue': 7,enumText: 材料}]}
Source/UBCS/ubcs-service/ubcs-code/src/main/resources/application-prod.yml
@@ -22,98 +22,3 @@
  configuration:
    map-underscore-to-camel-case: false
    call-setters-on-nulls: true
#顶层批量申请配置
batchadd:
  exportattr:
    type: 基本信息
    redis:
      time: 6000000
#统一接口属性映射文件配置
attrconfig:
  #系统集成
  system_attrmap: {RLM: D:\RLM.xml,PDM: D:\pdm.xml,DMS: D:\DMS.xml}
#数据定时推送配置
dataSyncPush:
  isStart: false
  cronTime: "0 0/1 * * * ?"
  dataParamName: dataString
  dataTranTemp: D:\desktop
#分类定时推送配置
clsfSyncPush:
  isStart: false
  cronTime: "0 0/1 * * * ?"
  dataParamName: dataString
  dataTranTemp: D:\desktop
#统一接口相关配置
code:
  universalinterface:
    checkSystemConfig: false
    attrconfig:
      #系统集成
      system_attrmap: {RLM: D:\RLM.xml,PDM: D:\pdm.xml,DMS: D:\DMS.xml}
#mybatis-plus-join:
#  table-alias: t
######应用基本配置
#app:
#  name: web
#  group: 北京宏博远达科技有限公司
#  description: 平台B/S客户端
#  private-token-key: vciweb20210212
###本项目的配置,注意spring家族读取配置时,大写字母需要转换为-的方式,而feign需要大小写完全相同
#session:
#  session-info-storage-type: "database"
#  database-platform: oracle
#  clear-session-on-start: false
#  ###是否开启用户在线检查
#  checkSessionTimeout: false
#  ###客户端判断超时轮询时间,单位为秒
#  sessionInterval: 10
#  ###客户端最大存在时间,单位为分钟
#  sessionIdlTime: 30
#  ###超时提醒时间,单位为分钟
#  sessionRemind: 3
#user-table-compatibility: "platform1"
##受2021版本的部分接口的影响,下面的内容需要配置,
#vciPlatform:
#  objectServiceUrl: ""
#  cache:
##    type: ehcache
#
###web配置
#vciweb:
#  debug: true
#file-preview:
#  enabled: true
#  preview-service-url: "http://dev.yunkeruida.top:28090/vciFilePreview/ajaxPreview.html"
#  preview-system-key: plt2020
#docking:
#  #是否开启主数据/分类数据推送同步
#  insertCache2: false
#  cron: 0 0/1 * * * ?
#  #预申请数据,配置模板文件存放的文件夹
#  templateDir: D:\desktop
#  tranTemp: D:\mes
#  #图号的key
#  tuhao: tuhao
#
#dataSyncPush:
#  isStart: false
#  cronTime: "0 0/1 * * * ?"
#  dataParamName: dataString
#  dataTranTemp: D:\desktop
#clsfSyncPush:
#  isStart: false
#  cronTime: "0 0/1 * * * ?"
#  dataParamName: dataString
#  dataTranTemp: D:\desktop
#
#attrconfig:
#  #系统集成
#  system_attrmap: {RLM: D:\RLM.xml,PDM: D:\pdm.xml,DMS: D:\DMS.xml}
#  #MPM枚举值属性映射
#  mpmEnumMap: {partType: [{enumValue: 1,enumText: 产品},{enumValue: 2,enumText: 产品},{'enumValue': 3,enumText: 标准件},{'enumValue': 7,enumText: 材料}]}