src/main/java/com/whyc/controller/ProjectManageController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/mapper/ProjectManageMapper.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/pojo/ProjectManage.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/service/ProjectArchiveManageService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/service/ProjectProcessManageService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/resources/mapper/ProjectManageMapper.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/whyc/controller/ProjectManageController.java
@@ -18,6 +18,7 @@ import org.springframework.web.multipart.MultipartFile; import javax.servlet.http.HttpServletResponse; import javax.validation.Valid; import java.io.*; import java.text.SimpleDateFormat; import java.util.*; @@ -49,7 +50,7 @@ } @PostMapping("add") @ApiOperation(value = "新建项目",notes = "fileList 存文件地址 {\n" + @ApiOperation(value = "项目过程管理-新建项目",notes = "fileList 存文件地址 {\n" + " \"fileList\": [\n" + " \n" + " ],\n" + @@ -69,7 +70,7 @@ " \"proState\": 0,\n" + " \"proProgress\": 0\n" + "}") public Response add(@RequestBody ProjectManage projectManage) { public Response add(@RequestBody @Valid ProjectManage projectManage) { Response response = service.add(projectManage); return response; } @@ -82,7 +83,7 @@ * @return */ @PostMapping("upload") @ApiOperation(notes = "返回文件地址,确认时提交保存到字段", value = "文档材料添加(选择文件)") @ApiOperation(notes = "返回文件地址,确认时提交保存到字段", value = "项目过程管理-文档材料添加(选择文件)") public Response upload(@RequestParam("file") MultipartFile file) { // 获取原始名字 String originalFilename = file.getOriginalFilename(); @@ -103,13 +104,12 @@ try { // 保存到服务器中 file.transferTo(dest); map.put("文件类型:", file.getContentType()); map.put("原文件名:", originalFilename); map.put("是否为空:", file.isEmpty()); map.put("fileType", file.getContentType()); map.put("fileName", originalFilename); Double size = file.getSize() * 0.01 / 1024 / 1024 * 100; String douStr = String.format("%.2f", size); map.put("文件大小:", douStr+" M"); map.put("文件地址:",fileName); map.put("fileSize", douStr+" M"); map.put("url",fileName); } catch (Exception e) { e.printStackTrace(); return response.setMsg(0, "上传失败"); @@ -122,15 +122,15 @@ @PostMapping("/uploads") @ApiOperation(notes = "返回文件地址,确认时提交保存到字段", value = "文档材料添加(多选)") public Response uploads(MultipartFile[] files) throws IOException { @ApiOperation(notes = "返回文件地址,确认时提交保存到字段", value = "项目过程管理-文档材料添加(多选)") public Response uploads(MultipartFile[] file) throws IOException { Response<Object> response = new Response<>(); if (files.length == 0) { if (file.length == 0) { return response.setMsg(0, "请选择要上传的文件"); } ArrayList<Object> list = new ArrayList<>(); for (MultipartFile multipartFile : files) { for (MultipartFile multipartFile : file) { if (multipartFile.isEmpty()) { return response.setMsg(0, "请选择要上传的文件"); } @@ -148,8 +148,8 @@ e.printStackTrace(); return response.setMsg(0, "上传失败"); } map.put("原文件名:", originalFilename); map.put("文件地址:", filePath + fileName); map.put("fileName", originalFilename); map.put("url", filePath + fileName); list.add(map); } @@ -159,7 +159,7 @@ @GetMapping("/download") @ApiOperation(notes = "需要在地址栏测试",value = "文档材料下载") @ApiOperation(notes = "需要在地址栏测试",value = "项目过程管理-文档材料下载") public Object download(HttpServletResponse response, @RequestParam String filePath,@RequestParam String fileName) { Response<Object> result = new Response<>(); File file = new File( filePath); @@ -211,7 +211,7 @@ @GetMapping("managesState") @ApiOperation(notes = "", value = "项目管理-己确认/未确认阶段查询") @ApiOperation(notes = "", value = "项目过程管理-己确认/未确认阶段查询") public Response<Object> searchManageStateByCondition(@ApiParam(value = "项目编号", required = true) @RequestParam String proNum, @ApiParam(value = "项目名称代码", required = true) @RequestParam String proNameCode) { ProjectManage projectManage = new ProjectManage(); @@ -226,7 +226,7 @@ * @return */ @PutMapping("updateManageState") @ApiOperation(notes = "项目进度确认1-6 对应 立项-审批-研究-结题-验收-归档",value = "项目管理-未确认阶段更新") @ApiOperation(notes = "项目进度确认1-6 对应 立项-审批-研究-结题-验收-归档",value = "项目过程管理-未确认阶段更新") public Response updateManageState(@ApiParam(value = "项目编号", required = true) @RequestParam String proNum, @ApiParam(value = "项目名称代码", required = true) @RequestParam String proNameCode, @ApiParam(value = "项目进度确认1-6",required = true)@RequestParam int proProgress, @@ -239,9 +239,22 @@ return service.updateManageState(projectManage); } @PutMapping("updateArchive") @ApiOperation(notes = "",value = "项目过程管理-归档") public Response updateArchive(@ApiParam(value = "项目编号", required = true) @RequestParam String proNum, @ApiParam(value = "项目名称代码", required = true) @RequestParam String proNameCode) { ProjectManage projectManage = new ProjectManage(); projectManage.setProNum(proNum); projectManage.setProNameCode(proNameCode); projectManage.setProProgress(6); return service.updateProjectProgress(projectManage); } @GetMapping("searchDoc") @ApiOperation(notes = "项目过程管理-项目管理",value = "文档材料查询") @ApiOperation(notes = "项目过程管理-项目管理",value = "项目过程管理-文档材料查询") public Response searchDocumentation(@ApiParam(value = "项目编号", required = true) @RequestParam String proNum, @ApiParam(value = "项目名称代码", required = true) @RequestParam String proNameCode){ ProjectArchiveManage projectArchiveManage = new ProjectArchiveManage(); @@ -252,7 +265,7 @@ } @DeleteMapping("delDoc") @ApiOperation(notes = "项目过程管理-项目管理",value = "文档材料删除") @ApiOperation(notes = "项目过程管理-项目管理",value = "项目过程管理-文档材料删除") public Response delDocumentation(@ApiParam(value = "项目编号", required = true) @RequestParam String proNum, @ApiParam(value = "项目名称代码", required = true) @RequestParam String proNameCode, @ApiParam(value = "文档路径", required = true) @RequestParam String proFilePath){ src/main/java/com/whyc/mapper/ProjectManageMapper.java
@@ -40,4 +40,6 @@ //项目概况信息 ProjectManage searchArchiveProjectInfo(ProjectManage pm); int updateProjectProgress(ProjectManage progress); } src/main/java/com/whyc/pojo/ProjectManage.java
@@ -28,11 +28,13 @@ /** * 项目编号 */ @NotNull(message = "项目编号不能为空") private String proNum; /** * 项目名称 */ @NotNull(message = "项目名称不能为空") private String proName; /** @@ -43,11 +45,13 @@ /** * 项目类型/类别 */ @NotNull(message = "项目编号不能为空") private String proSort; /** * 项目负责人 */ @NotNull(message = "项目负责人不能为空") private String proAdmin; /** @@ -58,23 +62,27 @@ /** * 联系方式 */ @NotNull(message = "联系方式不能为空") private String proTel; /** * 立项日期/申报日期 */ @NotNull(message = "立项日期不能为空") @JsonFormat(pattern = "yyyy-MM-dd",timezone = "Asia/Shanghai") private Date proCreatedate; /** * 执行日期/开始日期 */ @NotNull(message = "执行日期不能为空") @JsonFormat(pattern = "yyyy-MM-dd",timezone = "Asia/Shanghai") private Date proExecutionDate; /** * 执行日期1/结束日期 */ @NotNull(message = "执行日期1不能为空") @JsonFormat(pattern = "yyyy-MM-dd",timezone = "Asia/Shanghai") private Date proExecutionDate1; @@ -87,11 +95,13 @@ /** * 参与人员 */ @NotNull(message = "参与人员不能为空") private String proPerson; /** * 经费预算 */ @NotNull(message = "经费预算不能为空") private Long proFunding; /** src/main/java/com/whyc/service/ProjectArchiveManageService.java
@@ -33,8 +33,8 @@ for (int i = 0; i < list.size(); i++) { HashMap<String, String> map = new HashMap<>(); ProjectArchiveManage projectArchiveManage = list.get(i); map.put("文件名",projectArchiveManage.getProDocumentName()); map.put("文件路径",projectArchiveManage.getProFilePath()); map.put("fileName",projectArchiveManage.getProDocumentName()); map.put("url",projectArchiveManage.getProFilePath()); list1.add(map); } response.setMsg(1,"查询成功"); @@ -56,8 +56,8 @@ String name = absoluteFile.getName(); file.delete(); HashMap<Object, Object> map = new HashMap<>(); map.put("删除的文件名", name); map.put("删除的文件路径", pam.getProFilePath()); map.put("delFileName", name); map.put("delUrl", pam.getProFilePath()); response.setData(map); } } catch (Exception e) { @@ -116,15 +116,15 @@ for (int i = 0; i < lists.size(); i++) { ProjectArchiveManage pam = lists.get(i); HashMap<Object, Object> map = new HashMap<>(); map.put("文档名称",pam.getProDocumentName()); map.put("文档格式",pam.getProDocumentFormat()); map.put("fileName",pam.getProDocumentName()); map.put("documentFormat",pam.getProDocumentFormat()); Date proArchiveDate = pam.getProArchiveDate(); String format = ""; if (null != proArchiveDate) { format = new SimpleDateFormat("yyyy-MM-dd").format(proArchiveDate); } map.put("归档日期", format); map.put("下载地址",pam.getProFilePath()); map.put("archiveDate", format); map.put("url",pam.getProFilePath()); last.add(map); } } @@ -172,19 +172,19 @@ for (int i = 0; i < lists.size(); i++) { ProjectArchiveExperiment pae = lists.get(i); HashMap<Object, Object> map = new HashMap<>(); map.put("试验名称", pae.getProName2()); map.put("testName", pae.getProName2()); Date proUploadDate = pae.getProUploadDate(); String format1 = null; if (null != proUploadDate) { format1 = new SimpleDateFormat("yyyy-MM-dd").format(proUploadDate); } map.put("上传日期", format1); map.put("uploadDate", format1); Date proArchiveDate = pae.getProArchiveDate(); String format = null; if (null != proArchiveDate) { format = new SimpleDateFormat("yyyy-MM-dd").format(proArchiveDate); } map.put("归档日期", format); map.put("archiveDate", format); // map.put("下载地址",pam.getProFilePath()); last.add(map); } @@ -213,21 +213,21 @@ for (int i = 0; i < lists.size(); i++) { ProjectArchiveManage pam = lists.get(i); HashMap<Object, Object> map = new HashMap<>(); map.put("成果名称", pam.getAchievementName()); map.put("成果类型",pam.getAchievementType()); map.put("achievementName", pam.getAchievementName()); map.put("achievementType",pam.getAchievementType()); Date gainDate = pam.getGainDate(); String str1 = null; if(null!=gainDate){ str1 = new SimpleDateFormat("yyyy-MM-dd").format(gainDate); } map.put("取得/发表日期",str1); map.put("publishedDate",str1); Date proArchiveDate = pam.getProArchiveDate(); String str2 = null; if(null!=proArchiveDate){ str2 = new SimpleDateFormat("yyyy-MM-dd").format(proArchiveDate); } map.put("归档日期",str2); map.put("archiveDate",str2); last.add(map); } } src/main/java/com/whyc/service/ProjectProcessManageService.java
@@ -70,6 +70,7 @@ public Response add(ProjectManage pm) { Response response = new Response<>(); pm.setProNameCode(new SimpleDateFormat("yyyyMMddHHmmss").format(new Date())); pm.setProProgress(1);//立项 Integer num = projectManageMapper.checkUniqueId(pm); if (num > 0) { return response.setMsg(0, "添加失败,pro_name_code重复"); @@ -126,18 +127,18 @@ ProjectManage pm = projectManageMapper.searchManageStateByCondition(projectManage); List<ProjectArchiveManage> pams = projectArchiveManageMapper.searchByConditionDocumentPath(projectManage); HashMap<Object, Object> map = new HashMap<>(); map.put("项目管理", pm); map.put("pm", pm); ArrayList<Object> list = new ArrayList<>(); if (null != pams) { for (int i = 0; i < pams.size(); i++) { ProjectArchiveManage pam = pams.get(i); HashMap<Object, Object> mapDoc = new HashMap<>(); mapDoc.put("文件名", pam.getProDocumentName()); mapDoc.put("文件路径", pam.getProFilePath()); mapDoc.put("fileName", pam.getProDocumentName()); mapDoc.put("url", pam.getProFilePath()); list.add(mapDoc); } } map.put("文档材料", list); map.put("mapDoc", list); response.setCode(1); response.setMsg(1, "查询成功"); response.setData(map); @@ -191,4 +192,20 @@ } /** * 项目进度管理 * 项目进度(1-6 立项、审批、研究、结题、验收、归档) * @param progress * @return */ public Response updateProjectProgress(ProjectManage progress) { Response<Object> response = new Response<>(); boolean b = projectManageMapper.updateProjectProgress(progress) > 0; if (b) { response.setMsg(1, "更新成功"); } else { response.setMsg(0, "更新失败"); } return response; } } src/main/resources/mapper/ProjectManageMapper.xml
@@ -257,7 +257,7 @@ where pro_num = #{proNum} and pro_name_code = #{proNameCode} </update> <select id="searchAll" resultType="com.whyc.pojo.ProjectManage"> <select id="searchAll" resultType="com.whyc.pojo.ProjectManage"> SELECT pro_num, pro_name, pro_name_code, @@ -282,7 +282,7 @@ pro_execution_date1, pro_state FROM db_experiment.tb_project_manage where 1=1 where pro_progress <![CDATA[<=]]> 5 <if test="proNum!=null"> and pro_num = #{proNum} </if> @@ -330,7 +330,7 @@ pro_execution_date1, pro_archive_date FROM db_experiment.tb_project_manage where 1=1 and pro_progress = 6 <if test="proNum!=null"> and pro_num = #{proNum} </if> @@ -357,6 +357,12 @@ where pro_num = #{proNum} and pro_name_code = #{proNameCode} limit 1 </select> <update id="updateProjectProgress"> update tb_project_manage set pro_progress = #{proProgress,jdbcType=VARCHAR} where pro_num = #{proNum} and pro_name_code = #{proNameCode} </update> </mapper>