|
@@ -4,15 +4,15 @@ import com.alibaba.fastjson.JSON;
|
|
import com.google.common.collect.Lists;
|
|
import com.google.common.collect.Lists;
|
|
import com.jeeplus.common.config.Global;
|
|
import com.jeeplus.common.config.Global;
|
|
import com.jeeplus.common.oss.OSSClientUtil;
|
|
import com.jeeplus.common.oss.OSSClientUtil;
|
|
-import com.jeeplus.common.utils.FreemarkerUtil;
|
|
|
|
-import com.jeeplus.common.utils.ResponseUtil;
|
|
|
|
-import com.jeeplus.common.utils.StringUtils;
|
|
|
|
|
|
+import com.jeeplus.common.utils.*;
|
|
|
|
+import com.jeeplus.common.utils.excel.ExportExcel;
|
|
import com.jeeplus.common.utils.excel.ImportExcel;
|
|
import com.jeeplus.common.utils.excel.ImportExcel;
|
|
import com.jeeplus.common.web.BaseController;
|
|
import com.jeeplus.common.web.BaseController;
|
|
import com.jeeplus.modules.pojectMaterialsWarehouse.entity.ProjectMaterialCollectInfo;
|
|
import com.jeeplus.modules.pojectMaterialsWarehouse.entity.ProjectMaterialCollectInfo;
|
|
import com.jeeplus.modules.projectAccessory.dao.ProjectTemplateDao;
|
|
import com.jeeplus.modules.projectAccessory.dao.ProjectTemplateDao;
|
|
import com.jeeplus.modules.projectAccessory.entity.ProjectTemplateInfo;
|
|
import com.jeeplus.modules.projectAccessory.entity.ProjectTemplateInfo;
|
|
import com.jeeplus.modules.projectcontentinfo.dao.ProjectReportRecordDao;
|
|
import com.jeeplus.modules.projectcontentinfo.dao.ProjectReportRecordDao;
|
|
|
|
+import com.jeeplus.modules.projectcontentinfo.entity.DisposeProjectReportNumberInfo;
|
|
import com.jeeplus.modules.projectcontentinfo.entity.ProjectReportData;
|
|
import com.jeeplus.modules.projectcontentinfo.entity.ProjectReportData;
|
|
import com.jeeplus.modules.projectcontentinfo.entity.ProjectReportRecord;
|
|
import com.jeeplus.modules.projectcontentinfo.entity.ProjectReportRecord;
|
|
import com.jeeplus.modules.projectcontentinfo.service.ProjectReportDataService;
|
|
import com.jeeplus.modules.projectcontentinfo.service.ProjectReportDataService;
|
|
@@ -39,6 +39,7 @@ import com.jeeplus.modules.workreimbursement.service.WorkReimbursementService;
|
|
import freemarker.template.Configuration;
|
|
import freemarker.template.Configuration;
|
|
import freemarker.template.Template;
|
|
import freemarker.template.Template;
|
|
import org.activiti.engine.HistoryService;
|
|
import org.activiti.engine.HistoryService;
|
|
|
|
+import org.apache.shiro.authz.annotation.RequiresPermissions;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.scheduling.annotation.Scheduled;
|
|
import org.springframework.scheduling.annotation.Scheduled;
|
|
import org.springframework.stereotype.Controller;
|
|
import org.springframework.stereotype.Controller;
|
|
@@ -48,9 +49,12 @@ import org.springframework.web.bind.annotation.RequestMethod;
|
|
import org.springframework.web.bind.annotation.RequestParam;
|
|
import org.springframework.web.bind.annotation.RequestParam;
|
|
import org.springframework.web.bind.annotation.ResponseBody;
|
|
import org.springframework.web.bind.annotation.ResponseBody;
|
|
import org.springframework.web.multipart.MultipartFile;
|
|
import org.springframework.web.multipart.MultipartFile;
|
|
|
|
+import org.springframework.web.servlet.mvc.support.RedirectAttributes;
|
|
import org.w3c.dom.Document;
|
|
import org.w3c.dom.Document;
|
|
import org.w3c.dom.NodeList;
|
|
import org.w3c.dom.NodeList;
|
|
|
|
|
|
|
|
+import javax.servlet.http.HttpServletRequest;
|
|
|
|
+import javax.servlet.http.HttpServletResponse;
|
|
import javax.xml.parsers.DocumentBuilder;
|
|
import javax.xml.parsers.DocumentBuilder;
|
|
import javax.xml.parsers.DocumentBuilderFactory;
|
|
import javax.xml.parsers.DocumentBuilderFactory;
|
|
import java.io.File;
|
|
import java.io.File;
|
|
@@ -232,14 +236,14 @@ public class RuralProjectSignatureOldMessageDisposeController extends BaseContro
|
|
|
|
|
|
/*logger.info("-----------公司级—季度报表(开始)------------------");
|
|
/*logger.info("-----------公司级—季度报表(开始)------------------");
|
|
statementCompanyComprehensiveService.disposeStatementCompany(2022,1,1);
|
|
statementCompanyComprehensiveService.disposeStatementCompany(2022,1,1);
|
|
- logger.info("------------公司级—季度报表(结束)------------------");
|
|
|
|
|
|
+ logger.info("------------公司级—季度报表(结束)------------------");*/
|
|
logger.info("-----------部门级—季度报表(开始)------------------");
|
|
logger.info("-----------部门级—季度报表(开始)------------------");
|
|
- statementCompanyComprehensiveService.disposeStatementOffice(2022,1,1);
|
|
|
|
|
|
+ statementCompanyComprehensiveService.disposeStatementOffice(2024,1,4);
|
|
logger.info("------------部门级—季度报表(结束)------------------");
|
|
logger.info("------------部门级—季度报表(结束)------------------");
|
|
|
|
|
|
map.put("msgQuarter","季度报表处理完成");
|
|
map.put("msgQuarter","季度报表处理完成");
|
|
|
|
|
|
- logger.info("-----------公司级—年度报表(开始)------------------");
|
|
|
|
|
|
+ /*logger.info("-----------公司级—年度报表(开始)------------------");
|
|
statementCompanyComprehensiveService.disposeStatementCompany(2022,0,0);
|
|
statementCompanyComprehensiveService.disposeStatementCompany(2022,0,0);
|
|
logger.info("------------公司级—年度报表(结束)------------------");
|
|
logger.info("------------公司级—年度报表(结束)------------------");
|
|
logger.info("-----------部门级—年度报表(开始)------------------");
|
|
logger.info("-----------部门级—年度报表(开始)------------------");
|
|
@@ -247,7 +251,7 @@ public class RuralProjectSignatureOldMessageDisposeController extends BaseContro
|
|
logger.info("------------部门级—年度报表(结束)------------------");
|
|
logger.info("------------部门级—年度报表(结束)------------------");
|
|
|
|
|
|
map.put("msgYear","年度报表处理完成");
|
|
map.put("msgYear","年度报表处理完成");
|
|
-*/
|
|
|
|
|
|
+ */
|
|
long l2 = System.currentTimeMillis();
|
|
long l2 = System.currentTimeMillis();
|
|
map.put("msgdate",(l2-l1));
|
|
map.put("msgdate",(l2-l1));
|
|
return map;
|
|
return map;
|
|
@@ -878,4 +882,56 @@ public class RuralProjectSignatureOldMessageDisposeController extends BaseContro
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 处理报告号模板下载(调整为指定年度的报告号)
|
|
|
|
+ * @return
|
|
|
|
+ */
|
|
|
|
+ @RequestMapping(value = "disposeProjectReportNumber/template")
|
|
|
|
+ public String importFileTemplate(HttpServletRequest request,HttpServletResponse response, RedirectAttributes redirectAttributes) {
|
|
|
|
+ try {
|
|
|
|
+ ThisLocalityDownloadUtil download = new ThisLocalityDownloadUtil();
|
|
|
|
+ download.download("报告号调整数据导入模板.xlsx",request,response);
|
|
|
|
+ return null;
|
|
|
|
+ } catch (Exception e) {
|
|
|
|
+ addMessage(redirectAttributes, "下载导入模板下载失败!失败信息:"+e.getMessage());
|
|
|
|
+ }
|
|
|
|
+ return "redirect:"+Global.getAdminPath()+"/ruralProject/ruralProjectMessageAll/?repage";
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 处理报告号(调整为指定年度的报告号)
|
|
|
|
+ * @param file 需要调整报告号的文件
|
|
|
|
+ * @param year 需要调整成的年份
|
|
|
|
+ * @param type 用来判定是造价 还是咨询类项目
|
|
|
|
+ * @return
|
|
|
|
+ */
|
|
|
|
+ @RequestMapping(value = "/disposeProjectReportNumber")
|
|
|
|
+ @Transactional(readOnly = false)
|
|
|
|
+ public String disposeProjectReportNumber(MultipartFile file, String year, String type, RedirectAttributes redirectAttributes, HttpServletRequest request, HttpServletResponse response){
|
|
|
|
+ try {
|
|
|
|
+ ImportExcel ei = new ImportExcel(file, 0, 0);
|
|
|
|
+ List<DisposeProjectReportNumberInfo> reportNumberInfoList = ei.getNewDataList(DisposeProjectReportNumberInfo.class);
|
|
|
|
+ if(StringUtils.isBlank(year)){
|
|
|
|
+ addMessage(redirectAttributes, "请输入需要调整成的年份");
|
|
|
|
+ return "redirect:"+Global.getAdminPath()+"/ruralProject/ruralProjectMessageAll/?repage";
|
|
|
|
+ }
|
|
|
|
+ // 定义正则表达式,匹配四位数字(1000-9999)
|
|
|
|
+ String yearRegex = "^[1-9]\\d{3}$";
|
|
|
|
+ if(!year.matches(yearRegex)){
|
|
|
|
+ addMessage(redirectAttributes, "请输入有效的年份");
|
|
|
|
+ return "redirect:"+Global.getAdminPath()+"/ruralProject/ruralProjectMessageAll/?repage";
|
|
|
|
+ }
|
|
|
|
+ List<DisposeProjectReportNumberInfo> list = projectReportDataService.disposeProjectReportNumber(reportNumberInfoList, year, type);
|
|
|
|
+ //将返回后的list进行导出
|
|
|
|
+ String fileName = "报告号调整"+ DateUtils.getDate("yyyyMMddHHmmss")+".xlsx";
|
|
|
|
+ new ExportExcel("报告号调整数据", DisposeProjectReportNumberInfo.class).setDataList(list).write(response, fileName).dispose();
|
|
|
|
+ return "redirect:"+Global.getAdminPath()+"/ruralProject/ruralProjectMessageAll/?repage";
|
|
|
|
+ } catch (Exception e){
|
|
|
|
+ addMessage(redirectAttributes, "导出报告号调整数据记录失败!失败信息:"+e.getMessage());
|
|
|
|
+ }
|
|
|
|
+ return "redirect:"+Global.getAdminPath()+"/ruralProject/ruralProjectMessageAll/?repage";
|
|
|
|
+ }
|
|
|
|
+
|
|
}
|
|
}
|