diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/party/controller/ReportPartyController.java b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/party/controller/ReportPartyController.java index 1dd1a5951..b2fc54332 100755 --- a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/party/controller/ReportPartyController.java +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/party/controller/ReportPartyController.java @@ -70,9 +70,17 @@ public class ReportPartyController { //效验数据 ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); if (StringUtils.isNotEmpty(dto.getIdCard()) && StringUtils.isNotEmpty(dto.getName())) { - int sum = reportPartyService.findByIdCardAndName(dto.getIdCard(), dto.getName()); - if (sum == 1) { - throw new RenException("您已经报到,无需再次报道!"); + ReportPartyDTO result = reportPartyService.getByIdCardAndName(dto.getIdCard(), dto.getName()); + if (null != result && !dto.getCouplingCommunity().equals(result.getCouplingCommunity())) { + result.setId(dto.getId()); + result.setCouplingCommunity(dto.getCouplingCommunity()); + result.setCouplingCommunityName(dto.getCouplingCommunityName()); + reportPartyService.update(result); + } else { + int sum = reportPartyService.findByIdCardAndName(dto.getIdCard(), dto.getName()); + if (sum == 1) { + throw new RenException("您已经报到,无需再次报道!"); + } } } reportPartyService.save(dto); diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/party/dao/ReportPartyDao.java b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/party/dao/ReportPartyDao.java index 3d812a4f6..7511eb885 100755 --- a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/party/dao/ReportPartyDao.java +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/party/dao/ReportPartyDao.java @@ -32,4 +32,6 @@ import org.apache.ibatis.annotations.Param; public interface ReportPartyDao extends BaseDao { int findByIdCardAndName(@Param("idCard") String idCard, @Param("name") String name); + + ReportPartyEntity getByIdCardAndName(@Param("idCard") String idCard, @Param("name") String name); } diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/party/service/ReportPartyService.java b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/party/service/ReportPartyService.java index 521cb8139..4212dbb86 100755 --- a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/party/service/ReportPartyService.java +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/party/service/ReportPartyService.java @@ -94,4 +94,6 @@ public interface ReportPartyService extends BaseService { void delete(String[] ids); int findByIdCardAndName(String idCard, String name); + + ReportPartyDTO getByIdCardAndName(String idCard, String name); } diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/party/service/impl/ReportPartyServiceImpl.java b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/party/service/impl/ReportPartyServiceImpl.java index 8b39486ae..e2a28d0ba 100755 --- a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/party/service/impl/ReportPartyServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/party/service/impl/ReportPartyServiceImpl.java @@ -38,7 +38,10 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; -import java.util.*; +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.Objects; /** * 党员报道 @@ -185,6 +188,11 @@ public class ReportPartyServiceImpl extends BaseServiceImpl + +