|
@@ -1,8 +1,6 @@
|
|
|
package com.jpsoft.shinestar.modules.base.service.impl;
|
|
|
|
|
|
-import java.util.List;
|
|
|
-import java.util.Map;
|
|
|
-import java.util.UUID;
|
|
|
+import java.util.*;
|
|
|
import javax.annotation.Resource;
|
|
|
|
|
|
import com.jpsoft.shinestar.modules.base.dao.MeetingAddressDAO;
|
|
@@ -201,30 +199,49 @@ public class MeetingInfoServiceImpl implements MeetingInfoService {
|
|
|
meetingTimeDAO.insert(meetingTime);
|
|
|
}
|
|
|
|
|
|
+ //原参会人员
|
|
|
+ List<MeetingPerson> meetingPersonList = meetingPersonDAO.findByMeetingId(model.getId());
|
|
|
|
|
|
+ //新参会人员
|
|
|
+ Set<Long> selectPersonSet = new HashSet<>();
|
|
|
|
|
|
- //人员相关
|
|
|
- List<MeetingPerson> meetingPersonList = meetingPersonDAO.findByMeetingId(model.getId());
|
|
|
+ if(StringUtils.isNotEmpty(model.getSelectPersonKey())) {
|
|
|
+ String[] selectPersonKeyArray = model.getSelectPersonKey().split(",");
|
|
|
+
|
|
|
+ for (String key : selectPersonKeyArray) {
|
|
|
+ selectPersonSet.add(Long.valueOf(key));
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ Set<Long> meetingPersonSet = new HashSet<>();
|
|
|
|
|
|
- //先删除原绑定人员
|
|
|
- for (MeetingPerson meetingPerson:meetingPersonList) {
|
|
|
- meetingPerson.setDelFlag(true);
|
|
|
- meetingPerson.setUpdateBy(model.getUpdateBy());
|
|
|
- meetingPerson.setUpdateTime(model.getUpdateTime());
|
|
|
- meetingPersonDAO.update(meetingPerson);
|
|
|
+ for (MeetingPerson meetingPerson : meetingPersonList) {
|
|
|
+ //原先参会人员被删除
|
|
|
+ if(!selectPersonSet.contains(meetingPerson.getPersonId())){
|
|
|
+ meetingPerson.setDelFlag(true);
|
|
|
+ meetingPerson.setUpdateBy(model.getUpdateBy());
|
|
|
+ meetingPerson.setUpdateTime(model.getUpdateTime());
|
|
|
+ meetingPersonDAO.update(meetingPerson);
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ //当前参会人员
|
|
|
+ meetingPersonSet.add(meetingPerson.getPersonId());
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
if(StringUtils.isNotEmpty(model.getSelectPersonKey())){
|
|
|
- String[] selectPersonKeyArray = model.getSelectPersonKey().split(",");
|
|
|
- for (String key :selectPersonKeyArray) {
|
|
|
- MeetingPerson meetingPerson = new MeetingPerson();
|
|
|
- meetingPerson.setId(UUID.randomUUID().toString());
|
|
|
- meetingPerson.setCreateBy(model.getCreateBy());
|
|
|
- meetingPerson.setCreateTime(model.getCreateTime());
|
|
|
- meetingPerson.setDelFlag(false);
|
|
|
- meetingPerson.setPersonId(Long.parseLong(key));
|
|
|
- meetingPerson.setMeetingInfoId(model.getId());
|
|
|
- meetingPersonDAO.insert(meetingPerson);
|
|
|
+ for (Long personId : selectPersonSet) {
|
|
|
+ //新参会人员
|
|
|
+ if(!meetingPersonSet.contains(personId)) {
|
|
|
+ MeetingPerson meetingPerson = new MeetingPerson();
|
|
|
+ meetingPerson.setId(UUID.randomUUID().toString());
|
|
|
+ meetingPerson.setCreateBy(model.getCreateBy());
|
|
|
+ meetingPerson.setCreateTime(model.getCreateTime());
|
|
|
+ meetingPerson.setDelFlag(false);
|
|
|
+ meetingPerson.setPersonId(personId);
|
|
|
+ meetingPerson.setMeetingInfoId(model.getId());
|
|
|
+ meetingPersonDAO.insert(meetingPerson);
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|