|
@@ -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()+"】项目计划制定完成";
|