소스 검색

Merge remote-tracking branch 'origin/master'

user5 4 년 전
부모
커밋
ff116ae5ba

+ 60 - 23
src/main/java/com/jeeplus/modules/projectrecord/service/ProjectPlanService.java

@@ -6,6 +6,8 @@ import com.jeeplus.common.utils.StringUtils;
 import com.jeeplus.modules.projectrecord.dao.ProjectPlanDao;
 import com.jeeplus.modules.projectrecord.entity.ProjectPlanInfo;
 import com.jeeplus.modules.projectrecord.entity.ProjectRecords;
+import com.jeeplus.modules.ruralprojectrecords.entity.RuralProjectRecords;
+import com.jeeplus.modules.ruralprojectrecords.service.RuralProjectRecordsService;
 import com.jeeplus.modules.sys.entity.User;
 import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
@@ -17,10 +19,10 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
+import java.text.DateFormat;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.*;
 
 @Service
 @Transactional(readOnly = true)
@@ -32,6 +34,8 @@ public class ProjectPlanService extends CrudService<ProjectPlanDao, ProjectPlanI
     private WorkattachmentService workattachmentService;
     @Autowired
     private WorkProjectNotifyService workProjectNotifyService;
+    @Autowired
+    private RuralProjectRecordsService ruralProjectRecordsService;
 
 
     public List<ProjectPlanInfo> getProjectPlanList(ProjectPlanInfo projectPlanInfo){
@@ -49,30 +53,42 @@ public class ProjectPlanService extends CrudService<ProjectPlanDao, ProjectPlanI
 
 
     @Transactional(readOnly = false)
-    public void saveProjectPlanInfo(ProjectRecords projectRecords){
+    public void saveProjectPlanInfo(ProjectRecords projectRecords) throws ParseException {
 
         Set masterIdSet = new HashSet();
         //项目计划信息
-        for (ProjectPlanInfo projectPlanInfo : projectRecords.getProjectPlanList()){
-            if (projectPlanInfo.getId() == null){
+        String start = null;
+        String end=null;
+        for (int i=0;i<projectRecords.getProjectPlanList().size();i++){
+            if (projectRecords.getProjectPlanList().get(i).getId() == null){
                 continue;
             }
+            if (projectRecords.getProjectPlanList().size()==2){
+                start=projectRecords.getProjectPlanList().get(i).getBeginDate();
+                end=projectRecords.getProjectPlanList().get(i).getEndDate();
+            }else{
+                if (i==1){
+                    start=projectRecords.getProjectPlanList().get(i).getBeginDate();
+                }else if((i+1)==projectRecords.getProjectPlanList().size()){
+                    end=projectRecords.getProjectPlanList().get(i).getEndDate();
+                }
+            }
             //根据用户姓名查询用户id
             //获取提醒人信息
             User userR =new User();
-            if(StringUtils.isNotBlank(projectPlanInfo.getRemindId())){
-                userR = dao.getUserId(projectPlanInfo.getRemindId());
-                projectPlanInfo.setRemindName(userR.getId());
+            if(StringUtils.isNotBlank(projectRecords.getProjectPlanList().get(i).getRemindId())){
+                userR = dao.getUserId(projectRecords.getProjectPlanList().get(i).getRemindId());
+                projectRecords.getProjectPlanList().get(i).setRemindName(userR.getId());
             }else{
-                projectPlanInfo.setRemindName("");
+                projectRecords.getProjectPlanList().get(i).setRemindName("");
             }
             //获取完成人信息
             User userF = new User();
-            if(StringUtils.isNotBlank(projectPlanInfo.getFinishId())){
-                userF = dao.getUserId(projectPlanInfo.getFinishId());
-                projectPlanInfo.setFinishName(userF.getId());
+            if(StringUtils.isNotBlank(projectRecords.getProjectPlanList().get(i).getFinishId())){
+                userF = dao.getUserId(projectRecords.getProjectPlanList().get(i).getFinishId());
+                projectRecords.getProjectPlanList().get(i).setFinishName(userF.getId());
             }else{
-                projectPlanInfo.setFinishName("");
+                projectRecords.getProjectPlanList().get(i).setFinishName("");
             }
             //User userF = dao.getUserId(projectPlanInfo.getFinishId().split(",")[0]);
             //根据项目类型查询typeId
@@ -82,21 +98,42 @@ public class ProjectPlanService extends CrudService<ProjectPlanDao, ProjectPlanI
             masterIdSet.add(userR.getId());
 
             //添加项目id
-            projectPlanInfo.setProjectId(projectRecords.getId());
+            projectRecords.getProjectPlanList().get(i).setProjectId(projectRecords.getId());
             //判断删除信息
-            if (ProjectPlanInfo.DEL_FLAG_NORMAL.equals(projectPlanInfo.getDelFlag())){
+            if (ProjectPlanInfo.DEL_FLAG_NORMAL.equals(projectRecords.getProjectPlanList().get(i).getDelFlag())){
                 //判断是否有id  没有则为新增
-                if (StringUtils.isBlank(projectPlanInfo.getId())){
-                    projectPlanInfo.preInsert();
-                    dao.insert(projectPlanInfo);
+                if (StringUtils.isBlank(projectRecords.getProjectPlanList().get(i).getId())){
+                    projectRecords.getProjectPlanList().get(i).preInsert();
+                    dao.insert(projectRecords.getProjectPlanList().get(i));
                 }else{
-                    projectPlanInfo.preUpdate();
-                    dao.update(projectPlanInfo);
+                    projectRecords.getProjectPlanList().get(i).preUpdate();
+                    dao.update(projectRecords.getProjectPlanList().get(i));
                 }
+
             }else{
-                dao.delete(projectPlanInfo);
+                dao.delete(projectRecords.getProjectPlanList().get(i));
             }
         }
+        DateFormat format = new SimpleDateFormat("yyyy-MM-dd");//日期格式
+        Date startDate=null;
+        Date endDate=null;
+        if (projectRecords.getStartDate()!=null){
+            startDate=new Date(projectRecords.getStartDate().toString());
+        }else if (projectRecords.getEndingDate()!=null){
+            endDate=new Date(projectRecords.getEndingDate().toString());
+        }
+        RuralProjectRecords ruralProjectRecords=new RuralProjectRecords();
+        ruralProjectRecords.setId(projectRecords.getId());
+        ruralProjectRecords.setStartDate(format.parse(start));
+        ruralProjectRecords.setEndingDate(format.parse(end));
+        if (startDate!=null && endDate!=null){
+            if (!start.equals(format.format(startDate).toString()) || !end.equals(format.format(endDate).toString())){
+                ruralProjectRecordsService.updateDate(ruralProjectRecords);
+            }
+        }else{
+            ruralProjectRecordsService.updateDate(ruralProjectRecords);
+        }
+
         //向接收人发起通知操作
         String notifyStr = "项目【"+projectRecords.getProjectName()+"】项目计划制定完成";
         String titleStr = "项目【"+projectRecords.getProjectName()+"】项目计划制定完成";

+ 15 - 2
src/main/java/com/jeeplus/modules/projectrecord/web/ProjectPlanConsultingController.java

@@ -32,6 +32,8 @@ import org.springframework.web.servlet.mvc.support.RedirectAttributes;
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
+import java.text.DateFormat;
+import java.text.SimpleDateFormat;
 import java.util.Date;
 import java.util.List;
 
@@ -148,9 +150,9 @@ public class ProjectPlanConsultingController extends BaseController {
             //获取项目计划信息
             List<MainDictDetail> mainDictList = DictUtils.getMainDictList("projectPlan");
             if(mainDictList.size()>0){
-                for (MainDictDetail mainDict : mainDictList) {
+                for (int i=0;i<mainDictList.size();i++) {
                     ProjectPlanInfo projectPlan = new ProjectPlanInfo();
-                    projectPlan.setProjectStage(mainDict.getLabel());
+                    projectPlan.setProjectStage(mainDictList.get(i).getLabel());
                     //将项目负责人添加到展示栏
                     if(null != projectRecords.getProjectLeaders()) {
                         projectPlan.setRemindName(projectRecords.getProjectLeaders().get(0).getName());
@@ -160,6 +162,17 @@ public class ProjectPlanConsultingController extends BaseController {
                     User user = UserUtils.get(projectRecords.getCreateBy().getId());
                     projectPlan.setFinishId(user.getId());
                     projectPlan.setFinishName(user.getName());
+                    //设置开始时间(根据项目的开始时间)
+                    if (projectRecords.getStartDate()!=null && projectRecords.getEndingDate() !=null){
+                        DateFormat format = new SimpleDateFormat("yyyy-MM-dd");//日期格式
+                        if (i==0){
+                            Date date=new Date(projectRecords.getStartDate().toString());
+                            projectPlan.setBeginDate(format.format(date).toString());
+                        }else if((i+1)==mainDictList.size()){
+                            Date date=new Date(projectRecords.getEndingDate().toString());
+                            projectPlan.setEndDate(format.format(date).toString());
+                        }
+                    }
                     projectPlanList.add(projectPlan);
                 }
             }

+ 15 - 2
src/main/java/com/jeeplus/modules/projectrecord/web/ProjectPlanCostController.java

@@ -33,6 +33,8 @@ import org.springframework.web.servlet.mvc.support.RedirectAttributes;
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
+import java.text.DateFormat;
+import java.text.SimpleDateFormat;
 import java.util.Date;
 import java.util.List;
 
@@ -151,9 +153,9 @@ public class ProjectPlanCostController extends BaseController {
             //获取项目计划信息
             List<MainDictDetail> mainDictList = DictUtils.getMainDictList("projectPlan");
             if(mainDictList.size()>0){
-                for (MainDictDetail mainDict : mainDictList) {
+                for (int i=0;i<mainDictList.size();i++) {
                     ProjectPlanInfo projectPlan = new ProjectPlanInfo();
-                    projectPlan.setProjectStage(mainDict.getLabel());
+                    projectPlan.setProjectStage(mainDictList.get(i).getLabel());
                     //将项目负责人添加到展示栏
                     if(null != projectRecords.getProjectLeaders()) {
                         projectPlan.setRemindName(projectRecords.getProjectLeaders().get(0).getName());
@@ -163,6 +165,17 @@ public class ProjectPlanCostController extends BaseController {
                     User user = UserUtils.get(projectRecords.getCreateBy().getId());
                     projectPlan.setFinishId(user.getId());
                     projectPlan.setFinishName(user.getName());
+                    //设置开始时间(根据项目的开始时间)
+                    if (projectRecords.getStartDate()!=null && projectRecords.getEndingDate() !=null){
+                        DateFormat format = new SimpleDateFormat("yyyy-MM-dd");//日期格式
+                        if (i==0){
+                            Date date=new Date(projectRecords.getStartDate().toString());
+                            projectPlan.setBeginDate(format.format(date).toString());
+                        }else if((i+1)==mainDictList.size()){
+                            Date date=new Date(projectRecords.getEndingDate().toString());
+                            projectPlan.setEndDate(format.format(date).toString());
+                        }
+                    }
                     projectPlanList.add(projectPlan);
                 }
             }

파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 29 - 1
src/main/webapp/webpage/modules/projectrecord/plan/projectPlanConsultingForm.jsp


파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 29 - 1
src/main/webapp/webpage/modules/projectrecord/plan/projectPlanCostForm.jsp