ludc
2023-12-14 6af81ea2461ff8fe48320f4d33fe7b22c605254d
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java
@@ -1168,10 +1168,7 @@
                     "order by to_char(CREATETIME, 'mm')";
         //查询出需要处理的数据
         List<Map> maps = commonsMapper.selectBySql(sql);
         if(maps.size() == 0){
            throw new ServiceException("传入类型["+ datum.getName() + ":" +
               datum.getId() +"]未查到相关统计数据,请确认!!!!");
         }
         //当年每月月份之前之和
         List<Integer> monthCount = new ArrayList<>(12);
         //当年每月的月份数据
@@ -1179,6 +1176,9 @@
         //获取当前月的数字
         Calendar instance = Calendar.getInstance();
         int nowmonth = instance.get(Calendar.MONTH) + 1;
         if(maps.size() == 0){
            nowmonth = 0;
         }
         //从1到12月进行处理
         for (Integer i = 1; i <= 12; i++) {
            //当前月后所有数据设置为0
@@ -2589,12 +2589,24 @@
                }
                DateConverter dateConverter = new DateConverter();
                if (VciFieldTypeEnum.VTDateTime.equals(fieldTypeEnum)) {
                    //实际上,数据库都是timestamp的类型.
                    dateConverter.setAsText(value);
                    return "to_date('" + dateConverter.getAsText(VciDateUtil.DateTimeFormat) + "','" + DATETIME_FORMAT + "')";
                    //实际上,数据库都是timestamp的类型. TODO:虽然没能解决查询日期的问题,但是能暂时解决报错问题
               if(value.contains("*")){
                  value = value.replace("*","%");
                  return "'" + value + "'";
               }else{
                  value = value.replace("*","");
                  dateConverter.setAsText(value);
                  return "to_date('" + dateConverter.getAsText(VciDateUtil.DateTimeFormat) + "','" + DATETIME_FORMAT + "')";
               }
                } else if (VciFieldTypeEnum.VTDate.equals(fieldTypeEnum)) {
                    dateConverter.setAsText(value);
                    return "to_date('" + dateConverter.getAsText(VciDateUtil.DateFormat) + "','" + DATE_FORMAT + "')";
               if(value.contains("*")){
                  value = value.replace("*","%");
                  return "'" + value + "'";
               }else {
                  value = value.replace("*","");
                  dateConverter.setAsText(value);
                  return "to_date('" + dateConverter.getAsText(VciDateUtil.DateFormat) + "','" + DATE_FORMAT + "')";
               }
                } else if (VciFieldTypeEnum.VTDouble.equals(fieldTypeEnum)
                        || VciFieldTypeEnum.VTLong.equals(fieldTypeEnum)
                        || VciFieldTypeEnum.VTInteger.equals(fieldTypeEnum)) {