Эх сурвалжийг харах

Merge branch 'master' of http://47.110.251.215:3000/java_org/bladex

huangtf 2 жил өмнө
parent
commit
0d896f6f29
13 өөрчлөгдсөн 183 нэмэгдсэн , 56 устгасан
  1. 9 7
      blade-service/blade-archive/src/main/java/org/springblade/archive/utils/FileUtils.java
  2. 1 3
      blade-service/blade-business/src/main/java/org/springblade/business/controller/TaskController.java
  3. 2 0
      blade-service/blade-control/src/main/java/org/springblade/control/mapper/UserFilesInfoMapper.java
  4. 3 0
      blade-service/blade-control/src/main/java/org/springblade/control/mapper/UserFilesInfoMapper.xml
  5. 6 4
      blade-service/blade-control/src/main/java/org/springblade/control/service/impl/TaskProcessServiceImpl.java
  6. 9 1
      blade-service/blade-control/src/main/java/org/springblade/control/service/impl/UserFilesInfoServiceImpl.java
  7. 6 5
      blade-service/blade-manager/src/main/java/com/mixsmart/utils/FormulaUtils.java
  8. 19 4
      blade-service/blade-manager/src/main/java/org/springblade/manager/controller/ExcelTabController.java
  9. 8 6
      blade-service/blade-manager/src/main/java/org/springblade/manager/controller/FormulaController.java
  10. 26 0
      blade-service/blade-manager/src/main/java/org/springblade/manager/formula/impl/StartupTimeListener.java
  11. 10 17
      blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/ExcelTabServiceImpl.java
  12. 1 2
      blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/FormulaServiceImpl.java
  13. 83 7
      blade-service/blade-manager/src/main/java/org/springblade/manager/utils/test.java

+ 9 - 7
blade-service/blade-archive/src/main/java/org/springblade/archive/utils/FileUtils.java

@@ -238,13 +238,15 @@ public class FileUtils {
                     }
 
                     //获取OSS文件输入流
-                    reader = new PdfReader(CommonUtil.getOSSInputStream(urlStr));
-
-                    pageCount = reader.getNumberOfPages();
-
-                    for (int i = 0; i < pageCount; ++i) {
-                        int is = i + 1;
-                        pdfCopy.addPage(pdfCopy.getImportedPage(reader, is));
+                    InputStream inputStream = CommonUtil.getOSSInputStream(urlStr);
+                    if (inputStream != null) {
+                        reader = new PdfReader(inputStream);
+                        pageCount = reader.getNumberOfPages();
+
+                        for (int i = 0; i < pageCount; ++i) {
+                            int is = i + 1;
+                            pdfCopy.addPage(pdfCopy.getImportedPage(reader, is));
+                        }
                     }
                 } catch (Exception e) {
                     e.printStackTrace();

+ 1 - 3
blade-service/blade-business/src/main/java/org/springblade/business/controller/TaskController.java

@@ -180,9 +180,7 @@ public class TaskController extends BladeController {
         R<SmsResponse> result = this.newSmsClient.sendMessage("test_code", JsonUtil.toJson(params), phone);
         if (result.getData().isSuccess()) {
             //记录当前验证码
-            DefaultConfig config = this.defaultConfigService.getOne(
-                    Wrappers.<DefaultConfig>lambdaQuery().eq(DefaultConfig::getCreateUser, AuthUtil.getUserId())
-                                             .isNotNull(DefaultConfig::getSmsCode));
+            DefaultConfig config = this.defaultConfigService.getOne(Wrappers.<DefaultConfig>lambdaQuery().eq(DefaultConfig::getCreateUser, AuthUtil.getUserId()));
             if (config != null) {
                 //修改
                 config.setSmsCode(code);

+ 2 - 0
blade-service/blade-control/src/main/java/org/springblade/control/mapper/UserFilesInfoMapper.java

@@ -16,6 +16,7 @@
  */
 package org.springblade.control.mapper;
 
+import org.apache.ibatis.annotations.Param;
 import org.springblade.control.entity.UserFilesInfo;
 import org.springblade.control.vo.UserFilesInfoVO;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
@@ -42,4 +43,5 @@ public interface UserFilesInfoMapper extends BaseMapper<UserFilesInfo> {
 	// 获取详情
 	UserFilesInfoVO getUserFileDetail(String id);
 
+    String getLeaderNameByDeptId(@Param("deptId") long deptId);
 }

+ 3 - 0
blade-service/blade-control/src/main/java/org/springblade/control/mapper/UserFilesInfoMapper.xml

@@ -83,4 +83,7 @@
             (SELECT dict_name from c_dict_info a where a.code='political_type' and parent_id!=0 and dict_value =a.political_type) as politicalName
         from c_view_user_files_info a where  id=#{id} and  is_deleted=0
     </select>
+    <select id="getLeaderNameByDeptId" resultType="java.lang.String">
+        select name from blade_user WHERE is_leader like concat('%',#{deptId},'%')
+    </select>
 </mapper>

+ 6 - 4
blade-service/blade-control/src/main/java/org/springblade/control/service/impl/TaskProcessServiceImpl.java

@@ -1200,8 +1200,8 @@ public class TaskProcessServiceImpl extends BaseServiceImpl<TaskProcessMapper, T
                 ProjectCostBudget projectCostBudget = jdbcTemplate.query("select plan_task_desc,task_user,id from c_project_cost_budget where id = " + dataId, new BeanPropertyRowMapper<>(ProjectCostBudget.class)).stream().findAny().orElse(null);
                 if (taskProcessInfo1 != null && projectCostBudget != null) {
                     //获取任务完成时间
-                    TaskPlanUpdateStatusInfo taskPlanUpdateStatusInfo = jdbcTemplate.query("select completion_time from c_task_plan_update_status_info where update_type = 1 and approve_task_id = " + approveTaskId + " and plan_task_id = " + dataId, new BeanPropertyRowMapper<>(TaskPlanUpdateStatusInfo.class)).stream().findAny().orElse(null);
-                    if (taskProcessInfo1.getTaskName().contains("完成任务")){
+                    TaskPlanUpdateStatusInfo taskPlanUpdateStatusInfo = jdbcTemplate.query("select * from c_task_plan_update_status_info where approve_task_id = " + approveTaskId + " and plan_task_id = " + dataId, new BeanPropertyRowMapper<>(TaskPlanUpdateStatusInfo.class)).stream().findAny().orElse(null);
+                    if (taskProcessInfo1.getTaskName().contains("任务完成")){
                         if (taskPlanUpdateStatusInfo != null && taskProcessInfo1.getStatus().equals(2)) { //已完成的任务才推送
                             //修改任务实际完成时间、金额
                             LocalDate localDate = taskPlanUpdateStatusInfo.getCompletionTime().toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
@@ -1209,9 +1209,11 @@ public class TaskProcessServiceImpl extends BaseServiceImpl<TaskProcessMapper, T
                         }
                         //日志操作信息
                         planInformService.taskFinishedInform(projectCostBudget.getPlanTaskDesc(), projectCostBudget.getTaskUser(), SecureUtil.getUserName(), taskProcessInfo1.getStatus());
-                    }else if (taskProcessInfo1.getTaskName().contains("转移任务")){
-                        projectCostBudgetService.taskChangeStats(Long.parseLong(dataId),taskProcessInfo1.getReportUserId());
+                    }else if (taskProcessInfo1.getTaskName().contains("任务转移")){
+                        //修改任务人
+                        jdbcTemplate.execute("update c_project_cost_budget set task_user = "+taskPlanUpdateStatusInfo.getTransferObject() + " where id = "+ dataId);
                         //日志操作信息
+                        projectCostBudgetService.taskChangeStats(Long.parseLong(dataId),taskProcessInfo1.getReportUserId());
                         planInformService.taskChangedInform(taskPlanUpdateStatusInfo.getStartTransferObject(),taskPlanUpdateStatusInfo.getTransferObject(), SecureUtil.getUserName(),projectCostBudget.getPlanTaskDesc());
                     }
                 }

+ 9 - 1
blade-service/blade-control/src/main/java/org/springblade/control/service/impl/UserFilesInfoServiceImpl.java

@@ -16,6 +16,7 @@
  */
 package org.springblade.control.service.impl;
 
+import org.apache.commons.lang.StringUtils;
 import org.springblade.control.entity.UserFilesInfo;
 import org.springblade.control.vo.UserFilesInfoVO;
 import org.springblade.control.mapper.UserFilesInfoMapper;
@@ -40,7 +41,14 @@ public class UserFilesInfoServiceImpl extends BaseServiceImpl<UserFilesInfoMappe
 
 	@Override
 	public UserFilesInfoVO getUserFileDetail(String id) {
-		return baseMapper.getUserFileDetail(id);
+		UserFilesInfoVO vo = baseMapper.getUserFileDetail(id);
+		if (StringUtils.isBlank(vo.getLeaderName())){
+			String name = baseMapper.getLeaderNameByDeptId(vo.getDeptId());
+			if (StringUtils.isNotBlank(name)){
+				vo.setLeaderName(name);
+			}
+		}
+		return vo;
 	}
 
 }

+ 6 - 5
blade-service/blade-manager/src/main/java/com/mixsmart/utils/FormulaUtils.java

@@ -149,10 +149,7 @@ public class FormulaUtils {
         test(fd);
         System.out.println(fd.getEName());
     }*/
-    public static void  test(FormData fd){
-        fd.setEName("22222");
-        fd.getValues().add(new ElementData(2,2,2));
-    }
+
 
 
     public  static void write(FormData fd, Object data,Boolean nullOrBlank ){
@@ -160,6 +157,10 @@ public class FormulaUtils {
             /*无定位信息不写入*/
             return;
         }
+        /*一个单元格且存在多张,全部设置为自动拓展 20230816*/
+        if(fd.getCoordsList().size()==1&&fd.getValues().size()>1&&fd.getFormula()!=null){
+               fd.getFormula().setOutm(Formula.FULL);
+        }
         /*写入前清空内容*/
         fd.getValues().forEach(t->t.setValue(null));
         if(data instanceof List){
@@ -215,7 +216,7 @@ public class FormulaUtils {
                 fd.getValues().get(0).setValue(data);
             }
         }
-     //   fd.setUpdate(1);
+        fd.setUpdate(1);
     }
     public static  List<TableInfo> getTableInfoList(JSONArray dataArray) {
         if (dataArray != null && !dataArray.isEmpty()) {

+ 19 - 4
blade-service/blade-manager/src/main/java/org/springblade/manager/controller/ExcelTabController.java

@@ -44,6 +44,7 @@ import org.springblade.core.tool.utils.*;
 import org.springblade.manager.bean.TableInfo;
 import org.springblade.manager.entity.*;
 import org.springblade.manager.enums.ExecuteType;
+import org.springblade.manager.mapper.ExcelTabMapper;
 import org.springblade.manager.mapper.WbsTreePrivateMapper;
 import org.springblade.manager.service.*;
 import org.springblade.manager.utils.FileUtils;
@@ -110,6 +111,8 @@ public class ExcelTabController extends BladeController {
 
     private final JdbcTemplate jdbcTemplate;
 
+    private final ExcelTabMapper excelTabMapper;
+
 
     // 表单附件信息
     private final ITableFileService tableFileService;
@@ -646,8 +649,14 @@ public class ExcelTabController extends BladeController {
 
         // 标题解决
         ProjectInfo projectInfo = projectInfoService.getById(wbsTreeContract.getProjectId());
+        //判断是否是水利水电表,水利水电项目名14,表名12 。   其他表都是18
+        Boolean isWater = false;
+        ExcelTab tab = excelTabMapper.getWaterByTableId(wbsTreeContract.getExcelId());
+        if (tab != null){
+            isWater = true;
+        }
+
         // 添加标题显示
-        // Elements dwtitle = doc.getElementsByAttributeValueMatching("style", "18.0pt");
         Elements trs = table.select("tr");
         for (int i = 1; i < 6; i++) {
             Element tr = trs.get(i);
@@ -658,8 +667,14 @@ public class ExcelTabController extends BladeController {
                 String style = data.attr("style");
                 if (style.indexOf("font-size") >= 0) {
                     int fontsize = Integer.parseInt(style.substring(style.indexOf("font-size:") + 10, style.indexOf(".0pt")));
-                    if (StringUtils.isNotEmpty(data.text()) && fontsize >= 14) {
-                        trs.get(i - 1).select("td").get(0).text(projectInfo.getProjectName());
+                    if (isWater){
+                        if (StringUtils.isNotEmpty(data.text()) && fontsize >= 12) {
+                            trs.get(i - 1).select("td").get(0).text(projectInfo.getProjectName());
+                        }
+                    }else {
+                        if (StringUtils.isNotEmpty(data.text()) && fontsize >= 14) {
+                            trs.get(i - 1).select("td").get(0).text(projectInfo.getProjectName());
+                        }
                     }
                 }
             }
@@ -742,7 +757,7 @@ public class ExcelTabController extends BladeController {
         ProjectInfo projectInfo = projectInfoService.getById(wbsTreePrivate.getProjectId());
         // 添加标题显示
         Elements trs = table.select("tr");
-        for (int i = 1; i < 6; i++) {
+        for (int i = 0; i < 6; i++) {
             Element tr = trs.get(i);
             Elements tds = tr.select("td");
             for (int j = 0; j < tds.size(); j++) {

+ 8 - 6
blade-service/blade-manager/src/main/java/org/springblade/manager/controller/FormulaController.java

@@ -30,6 +30,7 @@ import org.springblade.manager.entity.*;
 import org.springblade.manager.enums.ExecuteType;
 import org.springblade.manager.formula.KeyMapper;
 import org.springblade.manager.formula.impl.CompositeDataAccess;
+import org.springblade.manager.formula.impl.StartupTimeListener;
 import org.springblade.manager.service.*;
 import org.springblade.manager.service.impl.FormulaServiceImpl;
 import org.springblade.manager.vo.AppWbsTreeContractVO;
@@ -41,6 +42,9 @@ import org.springframework.web.bind.annotation.*;
 import springfox.documentation.annotations.ApiIgnore;
 
 import java.io.FileNotFoundException;
+import java.time.Instant;
+import java.time.ZoneId;
+import java.time.format.DateTimeFormatter;
 import java.util.*;
 import java.util.concurrent.atomic.AtomicInteger;
 import java.util.stream.Collectors;
@@ -332,11 +336,7 @@ public class FormulaController {
                 xindex = 1;
                 yindex = 0;
             }
-            Map<Integer, List<String>> resu = list.stream().filter(s -> s.indexOf("_")>=0).collect(Collectors.groupingBy(s -> Integer.parseInt(s.split("_")[yindex])));
-
-            Map<Integer, List<String>> collect = new LinkedHashMap<>();
-            resu.entrySet().stream().sorted(Map.Entry.comparingByKey()).forEachOrdered(x -> collect.put(x.getKey(), x.getValue()));
-
+            Map<Integer, List<String>> collect = list.stream().filter(s -> s.indexOf("_")>=0).collect(Collectors.groupingBy(s -> Integer.parseInt(s.split("_")[yindex])));
             int j=0;
             for(Integer key: collect.keySet()){
                 List<String> datakey = collect.get(key);
@@ -452,7 +452,9 @@ public class FormulaController {
     @GetMapping("/log")
     public R<Object> log(Long pkeyId) {
         Map<String, Object> result = new HashMap<>();
-        result.put("版本信息", "202303161800");
+        Instant startupTime = StartupTimeListener.getStartupTime();
+        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss").withZone(ZoneId.systemDefault());
+        result.put("版本信息", "Application started at:" + formatter.format(startupTime));
         if (Func.isNotEmpty(pkeyId)) {
             result.put("执行情况", this.jdbcTemplate.queryForList("select * from m_formula_log where id=" + pkeyId));
         }

+ 26 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/formula/impl/StartupTimeListener.java

@@ -0,0 +1,26 @@
+package org.springblade.manager.formula.impl;
+
+import org.springframework.boot.context.event.ApplicationReadyEvent;
+import org.springframework.context.ApplicationListener;
+import org.springframework.stereotype.Component;
+
+import java.time.Instant;
+
+/**
+ * @author yangyj
+ * @Date 2023/8/16 11:57
+ * @description 查看发版时间
+ */
+@Component
+public class StartupTimeListener implements ApplicationListener<ApplicationReadyEvent> {
+    private static Instant startupTime;
+
+    @Override
+    public void onApplicationEvent(ApplicationReadyEvent event) {
+        startupTime = Instant.now();
+    }
+
+    public static Instant getStartupTime() {
+        return startupTime;
+    }
+}

+ 10 - 17
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/ExcelTabServiceImpl.java

@@ -270,10 +270,8 @@ public class ExcelTabServiceImpl extends BaseServiceImpl<ExcelTabMapper, ExcelTa
                         .fluentRemove("businessId")
                         .fluentRemove("sourceUrl")
                         .fluentRemove("pdfUrl")
-                        .fluentRemove("firstFileName");
-                // 移除空的数据
-                dataInfo2.entrySet().removeIf(entry -> StringUtils.isEmpty(entry.getValue()+"") || (entry.getValue()+"").equals("null"));
-
+                        .fluentRemove("firstFileName")
+                        .fluentRemove("");
                 // 计算数据
                 LinkedHashMap<String, List<String>> dataMap = dataInfo2.keySet().stream().filter(e -> e.contains("__")).collect(Collectors.groupingBy(e -> e.split("__")[0], LinkedHashMap<String, List<String>>::new, Collectors.toList()));
                 LinkedHashMap<String, String> dataMap2 = new LinkedHashMap<>();
@@ -1345,8 +1343,8 @@ public class ExcelTabServiceImpl extends BaseServiceImpl<ExcelTabMapper, ExcelTa
         int mergedCellCnt = sheet.getNumMergedRegions();
         for (int i = 0; i < mergedCellCnt - 1; i++) {
             CellRangeAddress mergedCell = sheet.getMergedRegion(i);
-            int xx = mergedCell.getNumberOfCells()+1;
-            if (xx <= all) {
+            int xx = mergedCell.getNumberOfCells();
+            if (xx == all) {
                 int fisRow = mergedCell.getFirstRow();
                 int firsrCol = mergedCell.getFirstColumn();
 
@@ -1390,9 +1388,7 @@ public class ExcelTabServiceImpl extends BaseServiceImpl<ExcelTabMapper, ExcelTa
             Element table = doc.select("table").first();
             Elements trs = table.select("tr");
             Elements cols = table.select("col");
-            if(pkeyId==1644218999703076895L){
-                System.out.println("");
-            }
+
             if (ObjectUtil.isNotEmpty(DataInfo)) {
                 for (String val : DataInfo.keySet()) {
                     Elements datas = doc.getElementsByAttributeValue("keyname", val);
@@ -1491,15 +1487,12 @@ public class ExcelTabServiceImpl extends BaseServiceImpl<ExcelTabMapper, ExcelTa
                                             if(StringUtils.isNotEmpty(dataJson)){
                                                 JSONArray jsonArray = JSONArray.parseArray(dataJson);
                                                 List<Integer> idList = Func.toIntList(myData);
-
-                                                if(idList!=null && idList.size()>=0 && idList.get(0)>=1){
-                                                    String dataInfo = jsonArray.getJSONObject(idList.get(0)-1).getString("name");
-                                                    for(int inx=1 ; inx<idList.size() ; inx++){
-                                                        int valIndex = idList.get(inx)-1;
-                                                        dataInfo = dataInfo+","+jsonArray.getJSONObject(valIndex).getString("name");
-                                                    }
-                                                    cell.setCellValue(dataInfo);
+                                                String dataInfo = jsonArray.getJSONObject(idList.get(0)-1).getString("name");
+                                                for(int inx=1 ; inx<idList.size() ; inx++){
+                                                   int valIndex = idList.get(inx)-1;
+                                                    dataInfo = dataInfo+","+jsonArray.getJSONObject(valIndex).getString("name");
                                                 }
+                                                cell.setCellValue(dataInfo);
                                             }
                                         }
                                     }

+ 1 - 2
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/FormulaServiceImpl.java

@@ -1123,8 +1123,7 @@ public class FormulaServiceImpl extends BaseServiceImpl<FormulaMapper, Formula>
     }
 
     public  void write(FormData fd,Object data){
-        /*如果需要向额外元素或对象输出数据,在此处修改*/
-               fd.setUpdate(1);
+               /*如果需要向额外元素或对象输出数据,在此处修改*/
                FormulaUtils.write(fd,data,false);
     }
 

+ 83 - 7
blade-service/blade-manager/src/main/java/org/springblade/manager/utils/test.java

@@ -5,25 +5,101 @@ import cn.hutool.extra.pinyin.PinyinUtil;
 import cn.hutool.extra.pinyin.engine.pinyin4j.Pinyin4jEngine;
 import com.alibaba.druid.sql.repository.SchemaObjectType;
 import com.alibaba.excel.util.DateUtils;
+import com.aspose.cells.HtmlSaveOptions;
+import com.spire.xls.*;
+import com.spire.xls.collections.PicturesCollection;
+import com.spire.xls.core.spreadsheet.HTMLOptions;
+import io.swagger.models.auth.In;
+import org.apache.commons.lang.StringUtils;
 import org.jsoup.Connection;
 import org.jsoup.Jsoup;
 import org.jsoup.nodes.Document;
 import org.jsoup.nodes.Element;
 import org.jsoup.select.Elements;
+import org.springblade.common.utils.SnowFlakeUtil;
+import org.springblade.core.tool.utils.IoUtil;
+import org.springblade.core.tool.utils.ResourceUtil;
 
+import java.awt.image.BufferedImage;
+import java.io.File;
+import java.io.FileInputStream;
 import java.io.IOException;
+import java.io.InputStream;
 import java.time.LocalDateTime;
 import java.time.format.DateTimeFormatter;
-import java.util.HashMap;
-import java.util.Map;
+import java.util.*;
+import java.util.stream.Collectors;
 
 public class test {
 
-    /*public static void main(String[] args) {
-        Map<String, Map<String, String>> map = getWeather("chongqing", "202304");
-//        String str = LocalDateTime.now().minusDays(1L).format(DateTimeFormatter.ofPattern("yyyy年MM月dd日"));
-//        System.out.println(map.get(str));
-    }*/
+    public static void main1231(String[] args) throws Exception {
+
+        List<String> data = new ArrayList<>();
+
+        data.add("12_0");
+        data.add("13_0");
+        data.add("14_0");
+        data.add("15_0");
+        data.add("16_0");
+        data.add("10_0");
+        data.add("11_0");
+
+        int yindex;
+        int xindex;
+        if(false){ //纵向
+            yindex = 1;
+            xindex = 0;
+        } else { //横向
+            xindex = 1;
+            yindex = 0;
+        }
+
+        String dw[] = data.toArray(new String[data.size()]);
+        Map<Integer, List<String>> result = data.stream().filter(s -> s.indexOf("_")>=0).collect(Collectors.groupingBy(s -> Integer.parseInt(s.split("_")[yindex])));
+
+        Map<Integer, List<String>> collect = new LinkedHashMap<>();
+        result.entrySet().stream().sorted(Map.Entry.comparingByKey()).forEachOrdered(x -> collect.put(x.getKey(), x.getValue()));
+        int j=0;
+        for(Integer key: collect.keySet()){
+            List<String> datakey = collect.get(key);
+            List<String> ordList = datakey.stream().filter(s -> s.indexOf("_")>=0).sorted(Comparator.comparing(s -> Integer.parseInt(s.split("_")[xindex]))).collect(Collectors.toList());
+            for (String ord:ordList){
+                dw[j]=ord;
+                j++;
+            }
+        }
+
+        for (String da:dw){
+            System.out.println(da);
+        }
+
+
+      /*  String file_path = FileUtils.getSysLocalFileUrl()+"/pdf/";
+
+        String filecode = SnowFlakeUtil.getId() + "";
+        String thmlUrl = file_path + filecode + ".html";
+
+        InputStream inputStreamByUrl = FileUtils.getInputStreamByUrl("/Users/hongchuangyanfa/Desktop/pdf/1688448159421825025.xlsx");
+        // 解析excel
+        Workbook wb = new Workbook();
+        wb.loadFromMHtml(inputStreamByUrl);
+        Worksheet sheet = wb.getWorksheets().get(0);
+
+
+
+
+        CellRange[] mergedCells = sheet.getMergedCells();
+        for (int i=0;i<mergedCells.length;i++){
+            CellRange mergedCell = mergedCells[i];
+
+            CellRange data = sheet.getCellRange(mergedCell.getRow(),mergedCell.getColumn());
+
+            System.out.println(data.getValue());
+            System.out.println(mergedCell.getRow()+"--=--"+mergedCell.getColumn());
+
+        }*/
+
+    }
     public static Map<String, Map<String, String>> getWeather(String city, String month) {
         String html = "http://www.tianqihoubao.com/lishi/" + city + "/month/" + month + ".html";
         System.out.println(html);